sqlserver怎么计算存储过程中的rowcount
本文介绍了sqlserver怎么计算存储过程中的rowcount的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
存储过程中更新表数据,想计算Merge影响行数,Mrege后Truncate source表也计算下source表的条数,但是不管truncate多少行显示出来的行数都是0,求问正确计算影响行数方法。
MERGE INTO A
USING B
ON A.ID=B.ID
--WHEN MATCHED THEN
--UPDATE SET
--。。。
WHEN NOT MATCHED THEN
INSERT (aa,bb,cc)
VALUES (b.aa,b.bb,c.cc);
--将临时表汇总数据删除
PRINT @@ROWCOUNT
--SET @rowinfect=@@ROWCOUNT
TRUNCATE TABLE dbo.a_bs_460
--SET @rowtrunc=@@ROWCOUNT
PRINT @@ROWCOUNT
解决方案
问题已解决:
merge后面的定义变量时赋予一个初始值为0就可以了;
truncate的影响行数在全局变量里是不统计的,需要在做truncate之前做下count 下 source表就可以了
这篇关于sqlserver怎么计算存储过程中的rowcount的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文