【发布时间】:2019-09-30 18:31:42
【问题描述】:
我想跳过在表更新时调用的触发器。我知道如果更新行的 UserID 低于某个 ID,我可以跳过它。
inserted 表可以有多行,什么时候会有多行?由于触发器在更新时触发,因此不会为更新中的每一行调用触发器吗?
下面的 SQL 是否正确忽略了触发器。如果 ID 小于 123,我希望触发器只是 RETURN 并跳过它通常会执行的逻辑:
DECLARE @UserID AS INT = (SELECT UserID FROM Inserted)
IF @UserID <= 123
BEGIN
RETURN
END
【问题讨论】:
-
如果
inserted表包含一些小于 123 的行和一些大于 123 的行,你希望发生什么? -
添加了 where 子句,
select * from inserted where userID > 123
标签: sql-server triggers