问题
I have a query which do UPSERT or update if exists and insert if not:
update MyTable
set [Name]=@NewValue
where ID=@ID
If @@RowCount = 0
insert into MyTable([Name])
values(@Name)
Now, I wonder if the @@RowCount
will be affected by a query executed in a trigger? Let us say in my trigger I have:
insert into MyLogs(Description)
values("Some description...")
If the update is successful in my first query, the trigger will run the insert to MyLogs which will have affected rows.
回答1:
@@ROWCOUNT
is tied to the scope of your current execution and is therefore unaffected by a trigger, which would run in a different scope.
来源:https://stackoverflow.com/questions/7005225/sql-server-does-trigger-affects-rowcount