我正在更新 sql server 表并只更新一条记录。但是我多次收到消息(1 行受影响),为什么会这样? 我的查询是:
UPDATE V2HRMS.dbo.tbl_pm_employee
SET LeavingDate='06-26-2013'
,Status=1
WHERE EmployeeCode=3407
这只是我的知识。
这通常意味着您已打开
actual execution plan option
。执行计划作为额外的行集发送,从而导致额外(1 行受影响) 消息
要禁用
actual execution plan
,请按 Ctrl+M
我认为您的表上定义了一些触发器,请尝试执行以下语句以查看您的表上是否定义了任何触发器:
SELECT SO.NAME, SC.[text]
FROM sysobjects SO INNER JOIN syscomments SC
ON SO.ID = SC.ID
WHERE SO.[type] = 'TR'
AND SC.[text] LIKE '%tbl_pm_employee%'
找到触发器后,如果您不希望它在更新表时执行,请使用以下语句禁用和启用它:
禁用触发器
DISABLE TRIGGER tr_Triggername ON tbl_pm_employee;
在这里进行更新
启用触发器
ENABLE TRIGGER tr_Triggername ON tbl_pm_employee;
您的表附加了一个触发器,因此每当您触发更新语句时,触发器也会被触发,因此您会收到一条额外的消息。