美文网首页
17/12/13约束

17/12/13约束

作者: 金春国_Roy | 来源:发表于2017-12-13 17:43 被阅读0次

17/12/13约束

约束命名规则

表明_列名 _约束类型

unique约束(唯一约束)

  • constraint(建立约束)

primary key=(主键)约束

*主键数据唯一,不能包含空值,每个表只能创建一个主键。

foreign key = (外键)约束

  • 外键列的值必须在引用列值得范围内,或者为空
  • 外键参照的列必须是主键或者唯一列
  • 主键表主键值被引用时,主键表记录不允许被删除
    -references: 引用在列一级
create table emp( ...,deptno number(7,2) not null 
constraint emp_deptno_fk references dept (deptno),...)

-foreign key: 定义在表一级

create table emp( ...,constraint emp_deptno_fk foreign key (deptno)
references dept (deptno),...)

注:
on delete cascade:当父表中的行被删除时,子表中相依赖的行同时被删除。
on delete set null:当父表中的行被删除时,子表中相依赖的行同时被转换为空值。
如没有上述选项时,当父表中的行被删除时,如果父表中的行在子表中被引用,则提示不能删除。

check约束

check约束,也叫检查性约束,确保某个列的所有行数据都要满足的条件。

追加约束

也可以用alter table的语法为表:
-追加或者删除约束,但不修改它的结构;
-启用或禁用约束
-用modify子句添加一个not null约束

约束的启用与禁用

  • 禁用约束语法
alter table 表名 disable constraint 约束的名字 [cascade]

应用擦拭

  • 启用约束语法
alter table 表明 enable constraint 约束的名字

相关文章

网友评论

      本文标题:17/12/13约束

      本文链接:https://www.haomeiwen.com/subject/oqtzixtx.html