官方说 @@ROWCOUNT 会被以下几种语句清0
原文如下:
Statements such as USE, SET <option>, DEALLOCATE CURSOR, CLOSE CURSOR, BEGIN TRANSACTION, or COMMIT TRANSACTION reset the ROWCOUNT value to 0.
可是实际情况有可能远不止这些:
例如:
print(@@ROWCOUNT ) 也会将@@ROWCOUNT清0
if @@ROWCOUNT > 0 也会将 @@ROWCOUNT 清0
真是奇葩啊