存储过程更新,其中最后一次修改等于getdate,但它也会更新getdate触发器

时间:2019-07-06 22:35:21

标签: sql-server

我有一个触发器来更新名为C#的{​​{1}}列。

我还有一个计划的作业,该作业运行存储过程以更新表

datetime

此存储过程正在触发最后修改的触发器,这意味着它每次运行时都会更新每一行。

有人知道如何解决这个问题吗?

谢谢

1 个答案:

答案 0 :(得分:0)

如何在UPDATE语句开始之前禁用触发器并在UPDATE之后立即启用触发器?

ALTER PROCEDURE [dbo].[Your_Procedure] 
AS
BEGIN
   EXEC('DISABLE TRIGGER YourTrigger ON YourTable'); 
   UPDATE YourTable
   SET YourColumn = some_value
   where lastmodified = getdate()
   EXEC('ENABLE TRIGGER YourTrigger ON YourTable');
END;