1
我有AFTER UPDATE觸發器在表:與組更新之後觸發執行 「在(...)」 語句查詢
ALTER TRIGGER [dbo].[table1]
ON [dbo].[table]
AFTER UPDATE
AS
BEGIN
SET NOCOUNT ON;
DECLARE @primaryKey bigint
SELECT @PrimaryKey = PK FROM Inserted
if EXISTS(select * from [dbo].[table1] where [email protected])
begin
update [dbo].[table1] set [Action] = 'U' where [email protected]
end
else
begin
insert into [dbo].[table1] ([PK], [Action], StampIn)
values (@PrimaryKey, 'U', GETDATE())
end
END
當我做「更新SOME_DB.dbo.TABLE設置字段=」 NEW VALUE'其中PK在(3,4,5)「中,我發現只有一行被添加到table1,PK」3「。這意味着觸發器在表中只執行一次。
但我需要有更新PK的table1中的所有行。
你能幫我解決我的問題嗎?
謝謝。
SQL Server觸發器在整個語句中執行一次,而不是逐行執行。 – lad2025