SQL Server:可以禁用触发器将其删除吗?

时间:2019-03-26 18:10:06

标签: sql-server

我有一个每晚运行的SQL Server维护计划。为了使其正常运行,我需要禁用触发器,然后在查询运行后启用它。在某个时候,触发器已删除,我需要确保以下代码没有删除它。

EXEC('DISABLE TRIGGER UPT ON ContactsQPROFILE');

UPDATE ContactsQPROFILE
SET QTOTALNETWORTH = QVALUEOFHOME
FROM ContactsQPROFILE 
WHERE (QVALUEOFHOME > QTOTALNETWORTH)
  AND (QVALUEOFHOME > 0.00);

EXEC('ENABLE TRIGGER UPT ON ContactsQPROFILE');

我希望有人可以确认上面的代码没有删除查询。

1 个答案:

答案 0 :(得分:0)

改为使用以下命令:

ALTER TABLE ContactsQPROFILE DISABLE TRIGGER UPT 
GO
    UPDATE ContactsQPROFILE
SET QTOTALNETWORTH = QVALUEOFHOME
FROM ContactsQPROFILE 
WHERE (QVALUEOFHOME > QTOTALNETWORTH)
  AND (QVALUEOFHOME > 0.00);
GO
ALTER TABLE ContactsQPROFILE ENABLE TRIGGER UPT