oracle约束键解析

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

oracle约束键解析

一、数据库约束的作用和分类

primarykey 和unique他们的作用是为了不让表中有重复的数据(一个表)check表示表中列的数据的范畴性的定义(一个表)

defult表示表中的默认值

foreignkey 表与表之间的联系(两个或两个以上的表)

【unique是能够包含null值的,同时一个表中能够有多个unique constraint

而primarykey在一个表中只能有一个.同时不能有null值】

二、针对约束创建有两种不同的思想

第一、创建标的时候一同将约束创建了

第二、你的表差不多创建好了,向表中添加约束

三、下面我就一一的介绍他们

一、primary key 主键约束

Ⅰ两种写法

①在差不多创建的表中添加约束

说明:添加约束的时候一定要修改表故用(alter[修改])

Alter table table1

Add primary key (列名1,列名2)

②同表一起创建

Create table table1

(列名1 数据类型是否为空primary key ,

列名1 数据类型是否为空

)

上面的是两种情形为一个字段设置主键,接下来是以多个列作为主键。

Create table table1

(

列名1 数据类型是否为空,

列名2 数据类型是否为空,

列名3 数据类型是否为空,

Primary key (列名1 ,列名2)

)

二、Check约束

那个和主键约束差不多

Alter table table1

Add unique(列名)

三、外键约束

好多的同学一直也都不明白得外键约束,到底什么才是外键?主键在那个表上?外键在那个表上?用T-SQL语句写的时候是主表在前,依旧外间表在前?等等一系列的问题!

接下来我讲给大伙儿说说那个主外键到底如何弄的。

事实上,主外键之间正如它的名字一样,他们之间有一个主从关系,一个主表,一个从表,主表上面设置的是主键,从表上面设置的是外键(foreign key),主键表中的数据发生变化的时,外键(foreign key)表的数据赶忙就发生改变。

Ⅰ向已有的表中添加一个主键(没有确实是添加,添加确实是修改表)

Alter table table1

Add foreign key (列名1)references table2(列名2)

Ⅱ创建表的时候一同创建外键

Create table table1

(列名4 数据类型是否为空primary key,

列名3 数据类型是否为空,

列名1 数据类型references table2 (列名2)

注:

Table1外键表

Table2主键表

列名1是主表列

列名2是外键表列

最一样常用的是主表的列和外键表的列的字段是一样的

一样多为ID 能够作为主键的。这是两个之间的交互。

四、Check约束

他也是基于一个表中的约束,限定表中列直截了当爱你数据的参照关系。

Ⅰ向一个以创建的表中添加约束

Alter tabel table1

Add constraint 约束名check(列名关于列的限制条件)

多是一些能够找到范畴的数据,例如年龄,身高,体重。

五、default 默认约束

他是一个关于某一个值的约束,他是唯独的一个用for关联词的句子

向表中添加一个默认约束

Alter tabletable1

Add default ‘默认值’for 列名

六、删除约束

删除约束也是关于表的修改故:

Alter table table1

Drop constraint 约束名

注:上面确实是我所明白得的一些约束。想要记住他们并不难

1 开头的一样差不多上alter table 表名或是create table 表名

2 在已有的表中添加约束用alter

3 与表同时创建用create

4 他们所有的关键字:

主键约束:primary key

唯独性约束:unique

外键约束:froeign key….references(参照)…..[两个表之间的关系,该是互相参照]

查询约束:….. constraint(约束)…….check[对字段查询,对字段约束]

默认约束:…….default………….for(给)……. 将前面默认的值给后边的字段

ORACLE约束总结

2019-05-13 08:36 by 潇湘隐者, 682 visits, 收藏, 编辑

你对ORACLE约束的了解如何?比较模糊依旧相当透彻?假如你对下面几个问题了如指掌的话,恭喜你,你差不多对约束把握得比较好了,不用看这篇文章了。ORACLE的约束有啥功能作用?有哪些类型约束(不同版本ORACLE是否不同)?视图有约束吗?约束是否会阻碍SQL性能?约束信息储备在哪些系统视图、数据字典中?约束能否修改名称?能否禁用约束?延迟约束有啥好处.......

约束定义

约束是强加在表上的规则或条件。确保数据库满足业务规则。保证数据的完整性。当对表进行DML或DDL 操作时,假如此操作会造成表中的数据违反约束条件或规则的话,系统就会拒绝执行那个操作。约束能够是列一级别的也能够是表级别的。定义约束时没有给出约束的名字,ORACE系统将为该约束自动生成一个名字,其格式为SYS_Cn,其中n为自然数(强烈建议各位在创建表或增加约束时,给约束定义名称。).

约束功能

约束的功能:实现一些业务规则,防止无效的垃圾数据进入数据库,爱护数据库的完整性(完整性指正确性与一致性)。从而使数据库的开发和爱护都更加容易。

相关文档
最新文档