日期:2014-05-16  浏览次数:20451 次

Oracle中删除外键约束、禁用约束、启用约束

最近制作报表制度时发现,Oracle和MS SQL SERVER的速度不在一个数量级,分析了一下是在Oracle中存在约束,执行以下sql可以生成禁止、启用、删除约束脚本,然后执行即可:

禁用所有外键约束

select 'alter table '||table_name||' disable constraint '||constraint_name||';' from user_constraints where constraint_type='R';

启用所有外键约束

select 'alter table '||table_name||' enable constraint '||constraint_name||';' from user_constraints where constraint_type='R';

删除所有外键约束

select 'alter table '||table_name||' drop constraint '||constraint_name||';' from user_constraints where constraint_type='R';