在使用数据泵导入数据时,有时需要禁用掉主键约束。
这样做在特定情况下会存在导入数据后主建索引丢失和主键对应的索引变化的问题。
官方支持如下。
禁用约束,删除索引:
Oracle? Database Administrator's Guide 11g Release 2 (11.2)--》Managing Integrity Constraints
You can use the ALTER TABLE statement to enable, disable, modify, or drop a constraint. When the database is using a UNIQUE or PRIMARY KEY index to enforce a constraint, and constraints associated with that index are dropped or disabled, the index is dropped, unless you specify otherwise.
重建约束后会自动选择唯一键:
Why Does The Primary Key Constraint Point To A Different Index After Import? (文档 ID 1455492.1)
During import, this sequence order is kept. When adding a primary/unique key constraint (step 3), Oracle checks if any existing index can be utilized to enforce the constraint, and in that case, uses it instead of creating a unique index (which was done before in 7.x releases unconditionally). This was done to minimize disk utilization and time needed for the constraint to be enabled.
可以在禁用约束时候使用keep index选项。
或者采用删除和重建的方式。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29135257/viewspace-2154659/
,如需转载,请注明出处,否则将追究法律责任。