最近制作报表制度时发现,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
'
;