在SQL Server 2005中,是否有一种删除行并告知实际删除行数的方法?可以使用相同条件的
select count(*)
语句,但我需要它是完全可信的。我的第一个想法是使用@@ROWCOUNT
变量,但它没有设置,例如:delete
from mytable
where datefield = '5-Oct-2008'
select @@ROWCOUNT
总是返回0。
MSDN建议使用OUTPUT
语法结构,例如:
delete from mytable
where datefield = '5-Oct-2008'
output datefield into #doomed
select count(*)
from #doomed
这实际上会因为语法错误而失败。
有任何想法吗?