一、创建外键约束
两种方法
1.创建表时
create table 子表(
id number,
name varchar2(5),
foreign key(id) references 父表(列名)
);
2.随时更改
alter table 子表 drop constraint 约束名;
alter table 子表 add constraint 约束名 foreing key(外键) conferences 父表(列名) ;
二、进一步理解
外键只接受两种值,一是父表中的外键值,二是NULL
创建外键时可以指定级联操作:
在添加外键约束时,还可以指定级联操作的类型,主要用于确定当删除父表中的一条记录时,如何处理子表中的外键字段。
1.CASCADE:删除父表中的被引用列的数据时,级联删除子表中相应的数据行
2.SET NULL:删除父表中的被引用列的数据时,将子表中相应引用列的值设置为NULL。要求子表中相应引用列支持NULL
3.NO ACTION:默认为此操作。删除父表中的被引用列的数据时,如果子表中的引用列中包含该值,则禁止该操作执行。(注意:执行delete 父表也不会报错,子表中的数据不会被删除)
注意:级联操作允许删除/更新多条数据!
三、实际例子
create table a_1 (id number);
create table