SQL Server - 会触发影响@@ Rowcount吗?

时间:2011-08-10 02:27:16

标签: sql triggers rowcount

我有一个查询,如果存在则执行UPSERT或更新,如果不存在则插入:

update MyTable 
set [Name]=@NewValue 
where ID=@ID

If @@RowCount = 0 
insert into MyTable([Name])
values(@Name)

现在,我想知道@@RowCount是否会受到触发器中执行的查询的影响?让我们在触发器中说:

insert into MyLogs(Description) 
values("Some description...")

如果在我的第一个查询中更新成功,则触发器将运行插入到MyLogs,这将影响行。

1 个答案:

答案 0 :(得分:15)

@@ROWCOUNT与当前执行的范围相关联,因此不受触发器的影响,触发器将在不同的范围内运行。