为什么还有额外的“(1行受影响)”

时间:2012-03-01 07:53:44

标签: sql-server sql-server-2008

每次执行(1 row(s) affected)时,SSMS都会显示额外的insert/update。例如,执行以下SQL

declare @a table (a int)
insert into @a values (1), (2)
update @a set a = 3 

SSMS将显示以下消息。

(2 row(s) affected)

(1 row(s) affected)

(2 row(s) affected)

(1 row(s) affected)

我没有找到任何数据库/服务器触发器。什么可能导致额外的(1 row(s) affected)

2 个答案:

答案 0 :(得分:41)

这通常意味着您已启用actual execution plan选项。执行计划作为额外的行集发送,从而产生额外的(1 row(s) affected)消息。

要禁用实际执行计划,请按Ctrl + M.

答案 1 :(得分:4)

这不应该发生。试着调查actual execution plan,那里发生了什么。