Oracle数据库约束条件的使用

2025-05-28 06:35:30

约束条件也称作完整性约束条件,是在数据表上强制碌巫谫浪执行的一些数据检验规则,当执行DML操作时必须符合约束条件,否则不能成功执行。约束条件包括有非空(Not Null)、唯一(Uni鳎溻趄酃que)、主键(Primary Key)、外键(Foreign Key)和检查(Check)。约束条件可以在建表时建立也可以在建表后建立。约束条件需要命名,可以由用户指定,否则由系统按照SYS_Cn的默认格式来命名,n是一串数字。

工具/原料

已安装有Oracle数据库11g

已安装有Oracle SQL Developer

Windows 操作系统

非空(Not Null)

1、非空(Not Null)约束用于确保字段值不为空。非空约束是五个约束条件中唯一一个只能定义在列级的约束条件。非空约束条件可以在建表时建立,也可以在建表后建立。如下图:

Oracle数据库约束条件的使用
Oracle数据库约束条件的使用

2、在数据字典中查询刚刚建立的非空约束条件。

Oracle数据库约束条件的使用

唯一(Unique)

1、唯一约束条件用于保证字段或者字段的组合不出现重复值。同样唯一约束条件可以在建表时建立,也可以在建表后建立。如下图:

Oracle数据库约束条件的使用
Oracle数据库约束条件的使用

2、在数据字典中查询唯一约束条件:

Oracle数据库约束条件的使用

主键(Primary Key)

1、主键约束条件从功能上看相当于非空且唯一。主键可以是单字段也可以是多字段组合。在一个白哦上只允许建立一个主键,而其他约束条件则没有明确的个数限制。在建表时建立主键约束:如下图

Oracle数据库约束条件的使用
Oracle数据库约束条件的使用

2、在建表后建立表级约束如下图:

Oracle数据库约束条件的使用
Oracle数据库约束条件的使用

3、在数据字典中查看主键约束条件:

Oracle数据库约束条件的使用
Oracle数据库约束条件的使用

外键(Foreign Key)

1、外键约束条件定凶及淄靥义在两个表的两个字段或一个表的两个字段上,用于保证相关两个字段的关系。外键约束包括两个方面的数据约束:(1):子表上定义的外键的列值,团蝣逅捎必须从主表被参照的列值中选取,或者为NULL;(2):当主表参照的值被子表参照时,主表的该行记录不允许被删除。

Oracle数据库约束条件的使用
Oracle数据库约束条件的使用

2、在数据字典中查看外键约束条件:

Oracle数据库约束条件的使用

3、在外键约束中有两个短语是可选的分别为ON DELETE CASCADE和ON DE雉搽妤粲LETE SET NULL.前一个用于指定级联删除选项,当删除主表数据时讵畿缤耒会级联删除从表的相关数据;后一个表示当删除主数据时,将从表的外键列值设置为NULL

检查(Check)

1、检查约束条件用来强制在字段上的每个值都要满足Check中定义的条件。

Oracle数据库约束条件的使用

2、在数据字典中查看检查约束条件:

Oracle数据库约束条件的使用

约束条件的启用和禁用

1、从字面上我们应该就能知道该功能的用途了。禁用和启用约束条件的语法如下:ALTER TABLE table_nameDISABLE | ENABLE CONSTRAINT constraint_name [CASCADE];

2、禁用Check约束:

Oracle数据库约束条件的使用

3、启用Check约束:

Oracle数据库约束条件的使用

4、如果禁用的是主键约束条件,且这个主键被其他列的外键约束参照,则一种选择是使用CASCADE短语,进行级联操作,另一种是先将外键约束条件禁用或删除,再禁用主键约束。

修改约束条件的名称

1、当希望修改约束条件的名称时,可以使用AL哌囿亡噱TER TABLE的RENAME CONSTRAINT子句修改约束条件的名称。语法如下:ALTER TABLE table_nam髫潋啜缅e RENAME CONSTRAINT old_cons_name TO new_cons_name;具体实现如下图:

Oracle数据库约束条件的使用
Oracle数据库约束条件的使用
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢