禁用与丢弃约束

时间:2013-12-10 20:28:51

标签: oracle oracle11g oracle10g

这两个操作之间的功能区别是什么?

在大型表上插入数据时,我个人会禁用约束。但它对下降约束有什么影响吗?我正在禁用约束,因为否则插入非常慢。

1 个答案:

答案 0 :(得分:4)

如果您正在进行数据加载或其他维护,则禁用而不是删除约束是有意义的。

这个想法是,如果您知道,那么当您完成数据加载或维护时,您将希望获得该约束,然后禁用它。完成后,您只需启用它即可。

你不应该放弃,除非你有理由相信你将来不需要这种约束。丢弃而不是禁用的危险在于,当您重新创建约束时,可能会略微(或完全)错误。如果您只是禁用,则不存在丢失约束定义的危险,因为约束定义仍保留在数据字典中。