SQL语句级联删除

如果想删除主表的时候同时删除字表数据,可以在建立外键时设置on delete cascade; 但是需要注意的是,这样是比较危险的,尽量在业务中用程序控制删除。

 

--create table a and b  
--主表
Create Table department (dept_id   number (4) Not Null Primary Key, name      varchar2 (10), importdate date default sysdate);  
--子表
Create Table employee (  
                       emp_id       number (4) Not Null Primary Key,  
                       dept_id      number (4),  Not Null
                       name         varchar2 (10),  
                       importdate   date default sysdate  
                      );  
 
Alter Table employee Add Constraint emp_fk Foreign Key (dept_id) References department(dept_id) on delete cascade;  
commit;

--删除主表时,级联删除子表
添加数据时,应先添加主表的数据记录

你可能感兴趣的:(sql)