存储过程中结果集的总数

Bha*_*ora 5 t-sql sql-server sql-server-2008 sql-server-2012

在 SQL Server 2008 中,有什么方法可以获取执行存储过程后填充的结果集(表)的总数。

假设我有一个存储过程,它在内部调用另一个存储过程。我想知道它返回内部调用的存储过程有多少结果集。

任何人都可以在这方面帮助我吗?

例如

CREATE PROCEDURE sp_GetReports
(
    @reportName AS VARCHAR(50)
)
AS
BEGIN
    DECLARE @reportProcName AS VARCHAR(50)

    SELECT  @reportProcName = ReportProcName
    FROM ReportMaster
    WHERE ReportName = @reportName;

    EXEC (@reportProcName)

    /*
    * Need to get here, total numbers of Result Sets (tables) retrived.
    */


END
GO
Run Code Online (Sandbox Code Playgroud)

提前致谢。

Hel*_*lio -1

您可以从内部过程返回带有 @@ROWCOUNT 的输出参数,并在 sp_GetReports 中使用它。