禁用从备份插入的触发器

时间:2017-06-23 15:48:20

标签: sql database oracle

如果我将数据导入表中,并且我知道数据不会违反表完整性(即从备份表导入),是否可以安全地禁用表上的触发器以使导入更容易?< / p>

1 个答案:

答案 0 :(得分:0)

很快:这取决于你的触发器做什么。

如果您的触发器只是执行某种完整性检查(或者它们正在执行某些只读操作),那么,只要您的备份有效,就可以安全地禁用它们。它实际上取决于那些完整性约束的定义。

如果您的触发器正在执行某些写入操作,您应该向自己询问启用触发器是否安全。有两种情况:

  1. 执行的操作是幂等:启用触发器并禁用它们都可以。禁用它们可以提高性能。

  2. 执行的操作不是幂等的:您必须禁用它们,否则它们会破坏完整性。