3------增加约束
(1)可以增加、删除一个约束,但是不能更改一个约束,,,
(2)可以指定一个约束是有效还是无效,,,
(3)可以用 modify 子句为一个表的列增加 not null 约束,,,
3.1 自引用外键约束 : 自引用外键约束是外键约束的变体,外键约束的父表和子表是同一个表.
emp 表中,经理 mgr 本身也必须是一名员工 empno
例子 :
alter table emp02
add constraint fk_ep02_mgr foreign key (mgr) references emp02(empno);
外键约束引用的父表列,必须存在 unique 或 primary key 约束
alter table emp02 add constraint pk_ep02_epno primary key (empno) ;
3.2 增加非空约束要用 modify
alter table emp02 modify empno not null;
4------ 删除一个约束
例子: alter table emp02 drop constraint xxx (xxx:约束的名字)
cascade
如果删除父表中的主键约束时,级联把子表的外键约束先删除
alter table dept02 drop constraint pk_dept02_deptno cascade
5------ 删除非空约束
alter table emp02 modify empno null;