【发布时间】:2020-07-25 02:16:59
【问题描述】:
作为我在 Microsoft SQL Server 中编写的自动化脚本的一部分,我需要计算存储过程返回的行数,不幸的是,此存储过程已锁定/加密,并且在 @ 之后有一个 DROP TABLE 语句987654322@ 语句将 @@rowcount 重置为 0。
有什么方法可以获取/捕获该存储过程返回的行的行数,而无需更改存储过程中的代码?
【问题讨论】:
-
如果行仍然返回给客户端,为什么需要获取它们的计数?
-
select 后的第一条语句,将@@rowcount 赋值给一个变量....
-
这是干什么用的?如果您只是在做一些临时手动分析,您可以查看
SELECT last_rows,* FROM sys.dm_exec_procedure_stats ps JOIN sys.dm_exec_query_stats qs ON qs.plan_handle= ps.plan_handle where ps.object_id = object_id('dbo.YourProc'),但我不会在生产代码中使用类似的东西
标签: sql sql-server stored-procedures rowcount