删除主表的记录时,你必先删除子表的记录才能够删主表的记录
成都创新互联专注于冠县网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供冠县营销型网站建设,冠县网站制作、冠县网页设计、冠县网站官网定制、成都微信小程序服务,打造冠县网络公司原创品牌,更为您提供冠县网站排名全网营销落地服务。
删除子表的记录时,你可以直接删除
ORACLE
数据库支持级联删除,但要看你的约束是怎么建的
1.ON
DELETE
CASCADE
(级联删除)
2.ON
DELETE
SET
NULL
(删除主表,子表列设置NULL)
没有设置上面两种方式,缺省是不允许删除,必须遵循下面的方式
删除主表的记录时,你必先删除子表的记录才能够删主表的记录
删除子表的记录时,你可以直接删除
如果是单方向的外键关联的时候:先删子表,然后删父表就可实现了。命令为:drop table tablename;
如果两张表相互有主外键约束命令为”drop table tablename cascade constraints“。只删除其中的一个即可完成两张表的同时删除。
1、ORACLE数据库中的外键约束名都在表user_constraints中可以查到。其中constraint_type='R'表示是外键约束。
2、启用外键约束的命令为:alter table table_name enable constraint constraint_name
3、禁用外键约束的命令为:alter table table_name disable constraint constraint_name
4、然后再用SQL查出数据库中所以外键的约束名:
select 'alter table '||table_name||' enable constraint '||constraint_name||';' from user_constraints where constraint_type='R'
select 'alter table '||table_name||' disable constraint '||constraint_name||';' from user_constraints where constraint_type='R'
可用sql语句删除外键约束,也可以用其他工具操作(如PL/SQL)。
一、语句删除:
alter table 表名 drop constraint 外键名;
二、工具删除:
1、登录PL/SQL到指定数据库。
2、左侧找到Tables选项。
3、找到相应的表,如emp,然后找到Foreign keys选项。
4、右键显示出来的外键,点击“删掉”即可。