Sql server 在存储过程中。如何判断更新是否有效?
我有: 如何判断是否找到要更新的行 我还注意到没有设置计数Sql server 在存储过程中。如何判断更新是否有效?,sql-server,Sql Server,我有: 如何判断是否找到要更新的行 我还注意到没有设置计数 有人能告诉我这是怎么回事吗?存储过程中的命令SET NOCOUNT-ON可防止向客户端发回包含行数详细信息的记录集。此附加记录集的存在可能会混淆OLEDB和ADODB等库 您可以修改您的更新声明,如下所示: UPDATE Table1 SET Col1 = 'X' WHERE Val1 = @Val1 它的作用是为每个更新的记录返回一个行集。使用@@ROWCOUNT检索受执行语句影响的行数。在存储过程中
有人能告诉我这是怎么回事吗?存储过程中的命令SET NOCOUNT-ON可防止向客户端发回包含行数详细信息的记录集。此附加记录集的存在可能会混淆OLEDB和ADODB等库 您可以修改您的更新声明,如下所示:
UPDATE Table1
SET Col1 = 'X'
WHERE Val1 = @Val1
它的作用是为每个更新的记录返回一个行集。使用
@@ROWCOUNT
检索受执行语句影响的行数。在存储过程中:
UPDATE Table1
SET Col1 = 'X'
OUTPUT deleted.Val1, deleted.Col1 as old, inserted.COl1 as new
WHERE Val1 = @Val1
这足以知道更新是否有效。您可以使用
输出插入….
逻辑来检索数据更改的完整详细信息。在这里查看它使用@@ROWCOUNT
UPDATE Table1
SET Col1 = 'X'
WHERE Col21 = @Val1
If @@ROWCOUNT > 0
begin
-- execute more logic
-- execute even more logic
end