oracle外键禁用


之前做测试,A表中有主键是作为B表和C表的外键的,现在想要删除ABC三个表,发现单纯使用DROP是无法删除的

会报错( 无法禁用约束条件 (XXXXXXXXX) - 存在相关性)这时候就需要我们把外键约束全部干掉。

在网上找到了非常实用的demo:

第一步查出所有的外键


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';

直接把这句话copy过去就可以查到外键

再执行alter table table_name disable constraint xxx;就可以将外键禁用,然后执行DROP命令就可以删除了。


					


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM