SQL Server禁用触发器超时

时间:2011-12-13 13:08:51

标签: sql sql-server

我有更新游标的表,不允许我对其进行批量更新,但需要做一些定期的批量更新(在sql作业中查询)。为此,我想在代码中禁用游标(在SSMS中禁用触发器可以以超时错误结束),但是在查询中禁用运行直到我停止它。

我可以以某种方式设置超时以禁用查询代码中的触发器(或设置作业运行的超时)吗? 感谢

2 个答案:

答案 0 :(得分:2)

您可以禁用并重新启用事务的触发器部分。然后,如果更新查询超时,则也会回滚禁用触发器。

答案 1 :(得分:2)

另一种选择可能是使用CONTEXT_INFO。这允许您设置一个范围为当前请求的全局变量。在执行批量更新之前,您可以将CONTEXT_INFO设置为特定值。触发器可以检查此值并跳过执行。这样您就不必禁用触发器。