龙空技术网

实用命令--Oracle批量禁用所有表的外键约束

波波说运维 401

前言:

而今姐妹们对“oracle添加主外键”大约比较着重,大家都想要学习一些“oracle添加主外键”的相关知识。那么小编在网络上汇集了一些对于“oracle添加主外键””的相关知识,希望朋友们能喜欢,同学们快快来了解一下吧!

概述

最近在转移数据库,进行数据导入的时候,遇到一件麻烦事,就是表间外键约束的存在,导致insert频频报错,批量执行sql语句又是顺序执行,手动输入的工作量又太大。所以这里考虑是不是可以把外键约束全部禁用先?总结如下:

1、删除所有外键约束

select 'alter table '||table_name||' drop constraint '||constraint_name||';' from user_constraints where constraint_type='R'
2、禁用所有外键约束
select 'alter table '||table_name||' disable constraint '||constraint_name||';' from user_constraints where constraint_type='R'
3、启用所有外键约束
select 'alter table '||table_name||' enable constraint '||constraint_name||';' from user_constraints where constraint_type='R';

接下来只要可以根据这个脚本得到的语句执行就可以了。

篇幅有限,关于Oracle批量执行sql语句之禁用所有表的外键的相关内容就介绍到这了。后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注一下~

标签: #oracle添加主外键