Oracle二维表的创建与约束以及修改

创建表2477203708

  create table 表名(

    属性名  数据类型  行约束条件,

    属性名  数据类型  行约束条件,

    ……

    表级约束条件

  )

字符串  char    使用指定长度的固定长度表示的字符串,位数不足的字符串在其后补空字符;

字符串  varchar  存放固定长度的字符串

字符串  varchar2  长度可变的字符串,动态分配内存空间(Oracle所特有的数据类型)

数字   number  number(6,3)数据长度为6,其中3位为小数

日期   date

约束语句:

  主键约束:非空唯一

    列级约束  在所声明的字段名后添加primary key,

    表级约束  constraint pk_表名_列名 primary key(字段名);pk_表名_字段名为约束名,可以省略

    表已经创建:alter table 表名add constraint pk_表名_字段名 primary key(字段名);

    删除约束  alter table 表名 drop constraint pk_表名_字段名;

  非空约束:

    列级约束  在所声明的字段名后添加not null,

    表级约束  constraint ck_表名_字段名 check(字段名 is not null)

    表已经创建    alter table 表名add constraint ck_表名_字段名 check(字段名 is not null)

    删除约束  alter table 表名 drop constraint ck_表名_字段名;

  检查约束

    列级约束  在所声明的字段名后添加check(检查条件)  如:check(age>0&&age<100)

    表级约束  constraint ck_表名_字段名 check(检查条件)

    表已经创建    alter table 表名add constraint ck_表名_字段名 check(检查条件)

    删除约束  alter table 表名 drop constraint ck_表名_字段名;

  唯一约束

    列级约束  在所声明的字段名后面直接添加unique

    表级约束  constraint un_表名_字段名 unique(字段名)

    表已经创建    alter table 表名add constraint un_表名_字段名 unique(字段名)

    删除约束  alter table 表名 drop constraint un_表名_字段名

  外键约束

    列级约束  在所声明的字段名后添加references 父表名(列名)

    表级约束  constraint fk_表名_字段名 foreign key(字段名) references 父表名(字段名)

    表已经创建    alter table 表名add constraint fk_表名_字段名 foreign key(字段名) references 父表名(字段名)

    删除约束  alter table 表名 drop constraint fk_表名_字段名;

  外键的缺点:被引用的表不能直接删除内部数据(被引用的)

    解决方法一、先解除关联,再删除

    解决方法二、加关键字 on delete

      on delete cascade 级联父表数据被删除时,与对应字表中数据与删除

      on delete set null 级联父表数据被删除时,与对应字表中数据中的外键值置为null(外键不能添加非空约束)

二维表表的修改

  添加新的字段:alter table 表名 add 字段名 数据类型类型 ;

  修改字段类型:alter table 表名 modify 字段名 新数据类型;

  修改字段名 :alter table 表名 rename column 字段名 to 新字段名;

  删除字段  :alter table 表名 drop column 字段名;

  删除表   :drop table 表名;

  修改表名  :rename 表名 to 新表名;

  查看表结构 :desc 表名;

原文地址:https://www.cnblogs.com/sdsafc557/p/11657434.html

时间: 2024-10-07 12:09:35

Oracle二维表的创建与约束以及修改的相关文章

Oracle - 二维表相关

1. 创建二维表 -- create table 表名 ( -- 字段名1 字段类型 [not null] [primary key] , -- 字段名2 字段类型 check(条件判断), -- 字段名3 字段类型 , -- ... -- constraint 约束名 primary key(字段名) -- ) -- 字段类型 -- number 数值类型 -- number(a, b), 总长度为a, 小数位长度为b, 小数位可以不写 -- varchar2 字符类型 -- varchar(

Oracle【二维表管理:约束】

1.简单的表创建和字段类型最简单的方式去创建表(没有添加主键之类的约束条件)[Oracle的字段类型]number:数值类型--整数类型:number(a) 总长度a--小数类型:number(a,b) 总长度a,小数长度b,小数可缺省varchar2:字符类型--字符类型 varchar2(ln) ln表示字符的最大长度,实际存储内存的长度<=ln--特点:多态分配存储空间,节省空间char:字符类型--字符类型char(ln) 不管字符数据长度多大,直接在内存开辟ln大小的空间存储数据--特

【Excle数据透视】二维数据如何创建数据透视表

二维数据在创建数据透视表的时候,可能会给你带来一些麻烦,没法创建,会丢失维度,那怎么办呢? 解决办法:使用数据透视表和数据透视图向导即可创建 步骤1 按下[Alt+D+P],出现如下界面 选择上图中的"多重合并计算数据区域"→下一步 创建单页字段→下一步 选定区域A:A15→添加→下一步 单击完成 数据透视表已经创建完成.二维数据透视表与一维数据透视表在于"行合计" 注意:我上图的数据透视是使用默认计数,所以全部都是1,这个可以根据自己的需求进行调整.

mysql关系(二维表)的设计规范,范式

范式,NF,normal format,就是指对表的结构的要求! 目的:1,规范结构!2,减少数据冗余! 第一范式,1NF,字段原子性 要求字段不能再分,要求字段的原子性 第二范式,2NF,非部分依赖 增加唯一主键即可!ID 范式的要求,是逐渐递增! 在满足 了 第一范式的前提下,不能出现部分依赖! 部分依赖指的是:普通字段对 主键 是完全依赖的,而不应该是依赖主键的一部分! 依赖:可以通过那个字段去决定另一个字段 因此,出现主键部分依赖的前提是,出现复合主键! 其中代课时间,开始和结束时间,没

采用jsp页面与java代码分离的方式写一个简单的二维表

前提:在我们做程序时追求的是高内聚,低耦合,但是如果我们把jsp页面的的代码和java的代码都放在了jsp的代码编写中,使java和jsp高耦合这样的话不仅使jsp代码页面显得很复杂,而且也特别让不利于以后的维护,所以我们有了一个不成文的规范就是分层架构,把javad代码与jsp的代码分离开来,使jsp代码页中更加干净整洁. 下面我将于用jsp和java代码分离的方法做出这样的一个二维表(做一个jsp页面动态显示信息表) 第一步:首先我们需要一个实体类用于存放一个人的一整条信息(根据表格信息有编

层次结构和二维表的关系数据存储

摘:Storing Hierarchical Data in a Database Article(翻译版本) 原文链接:http://shiningray.cn/hierarchical-data-database.html 作者:Gijs Van Tulder 翻译:ShiningRay @ NirvanaStudio 无论你要构建自己的论坛,在你的网站上发布消息还是书写自己的CMS程序,你都会遇到要在数据库中存储层次数据的情况.同时,除非你使用一种像XML的数据库,否则关系数据库中的表都不

Excel Power Query经典应用之二维表转一维表

Excel Power Query经典应用之二维表转一维表 将一个二维表格转为一维表格,是我们经常要做的事,目的是为了将数据做更好的分析.但Excel普通的转换的方式却比较麻烦.不过不用担心.利用Excel的Power Query功能,可以实现秒转. 了解更多新技能,扫描关注微信公众号 大话office

JS—二维数组的创建

//二维数组的创建 //方法一: var myarr = new Array(); //先声明一维 for ( var i = 0; i < 2; i++) { //一维长度为2 myarr[i] = new Array(); //再声明二维 for ( var j = 0; j < 3; j++) { //二维长度为3 myarr[i][j] = i + j; // 赋值,每个数组元素的值为i+j } } //方法二: var myarr1 = [ [ 0, 1, 2 ], [ 1, 2,

数据库中的二维表—巧借Excel

一维表和二维表的区别         一维表也常称为流水线表格,它和二维表做出的数据透视表最大的区别在于"行总计".判断数据是一维表格还是二维表格的一个最简单的办法,就是看其列的内容--每一列是否是一个独立的参数.如果每一列都是独立的参数那就是一维表,如果每一列都是同类参数那就是二维表. 二维表的建立     开始在网上一直查找如何在数据库中建立二维表,查了很多资料大多是什么静态和动态的sql语句建立,看了看也不是很清楚但是在查询的时候总是出来Excel如何如何,于是便想是否可以在Ex