我必须将表从Oracle数据库复制到db2 v7,并且为了做到这一点(避免数百万次丢弃和创建)我想知道db2是否具有像Oracle这样的功能来启用/禁用约束暂时不放弃它们。
提前致谢, 莫罗。
答案 0 :(得分:5)
你可以这样做:
ALTER TABLE <table-name> ALTER FOREIGN KEY <constraint-name> NOT ENFORCED
然后重新启用:
ALTER TABLE <table-name> ALTER FOREIGN KEY <constraint-name> ENFORCED
答案 1 :(得分:1)
我不确定这是否适用于版本7,但您可以尝试以下操作:
set integrity for table_name off
set integrity for table_name foreign key immediate unchecked
然后你就可以进行插入了。要重新启用,您可以执行以下操作:
set integrity for table_name immediate checked