Хранимая процедура обновляется там, где последнее изменение равно getdate, но также обновляется триггер getdate - PullRequest
1 голос
/ 07 июля 2019

У меня есть триггер, который обновляет столбец datetime с именем lastmodified.

У меня также есть запланированное задание, в котором выполняется хранимая процедура, обновляющая таблицу

where lastmodified = getdate()

Эта хранимая процедура запускает последний измененный триггер, то есть обновляет каждую строку при каждом запуске.

Есть идеи, как обойти это?

Спасибо

1 Ответ

0 голосов
/ 07 июля 2019

Как насчет отключения триггера до начала оператора 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;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...