我正在使用以下触发器来跟踪表中的最后修改日期:
CREATE TRIGGER trg_UpdateTimeEntry
ON dbo.TimeEntry
AFTER UPDATE
AS
UPDATE dbo.TimeEntry
SET ModDate = GETDATE()
WHERE ID IN (SELECT DISTINCT ID FROM Inserted)
它说“更新后”,但即使我插入一行,它也会将 ModDate 列设置为与输入日期相同。我怎样才能阻止这种情况发生?我只希望它在我有机会进入一行时改变,而不是在添加新行时(在这种情况下它应该保持 NULL)。
谢谢!