我有一个查询,该查询会进行UPSERT或更新(如果存在)并插入(如果不存在):
update MyTable set [Name]=@NewValue where ID=@ID If @@RowCount = 0 insert into MyTable([Name]) values(@Name)
现在,我想知道是否@@RowCount会受到触发器中执行的查询的影响?让我们说一下我的触发条件:
@@RowCount
insert into MyLogs(Description) values("Some description...")
如果更新在我的第一个查询中成功,则触发器将向MyLogs运行插入操作,该操作将影响行。
@@ROWCOUNT 与当前执行的范围相关,因此不受触发器的影响,触发器将在其他范围内运行。
@@ROWCOUNT