Untitled
unknown
plain_text
a year ago
1.4 kB
6
Indexable
-- Declare the table variable to store results
DECLARE @Results TABLE (
ProcedureID NVARCHAR(100), -- Procedure name
Total INT -- The "total" value (0 or 1)
);
-- Procedure names
DECLARE @ProcedureList TABLE (ProcedureName NVARCHAR(100));
INSERT INTO @ProcedureList (ProcedureName)
VALUES ('spAATcao'), ('spAnotherProcedure'), ('spThirdProcedure');
-- Variables for execution
DECLARE @ProcName NVARCHAR(100);
DECLARE @SQL NVARCHAR(MAX);
DECLARE @Parameter INT = 11223; -- Input parameter for procedures
-- Cursor to loop through each procedure
DECLARE ProcCursor CURSOR FOR
SELECT ProcedureName FROM @ProcedureList;
OPEN ProcCursor;
FETCH NEXT FROM ProcCursor INTO @ProcName;
WHILE @@FETCH_STATUS = 0
BEGIN
-- Construct dynamic SQL to execute the procedure and capture the result set
SET @SQL = N'
INSERT INTO @Results (ProcedureID, Total)
EXEC ' + @ProcName + ' @rm = @Parameter;';
-- Execute the dynamic SQL and insert the results into the @Results table variable
EXEC sp_executesql @SQL,
N'@Parameter INT, @Results TABLE (ProcedureID NVARCHAR(100), Total INT) OUTPUT',
@Parameter = @Parameter,
@Results = @Results;
FETCH NEXT FROM ProcCursor INTO @ProcName;
END;
CLOSE ProcCursor;
DEALLOCATE ProcCursor;
-- Display the results from the table variable
SELECT * FROM @Results;
Editor is loading...
Leave a Comment