patternsqlMajor
Get Stored Procedure Result Column Types
Viewed 0 times
storedresultcolumnproceduregettypes
Problem
I'm trying to get whatever a stored procedure returns, with the column names and their types. I can do this with tables but I couldn't figure it out for stored procedures. I tried the
I have also tried something like this but I'm not sure what I am supposed to match with what.
For example:
I only need the names of the column names a stored procedure returns and their data types. SQL Server version is 2014, if it matters.
Any ideas? Thanks.
sp_columns but only managed to make it work for tables.I have also tried something like this but I'm not sure what I am supposed to match with what.
SELECT *
FROM SYS.PROCEDURES (NOLOCK) AS AA
INNER JOIN SYS.SCHEMAS (NOLOCK) AS BB ON (AA.schema_id = BB.schema_id)
INNER JOIN SYS.COLUMNS (NOLOCK) AS CC ON (AA.object_id = CC.object_id)For example:
USER_ID VARCHAR(200)I only need the names of the column names a stored procedure returns and their data types. SQL Server version is 2014, if it matters.
Any ideas? Thanks.
Solution
Specifically for objects, there is a DMV called sys.dm_exec_describe_first_result_set_for_object which will describe the first result set if SQL Server can figure out what it should be (dynamic SQL, for example won't return a valid result).
Specifically for T-SQL or batch related items there is a different DMV and accompanied system stored procedure. The DMV is sys.dm_exec_describe_first_result_set and the stored procedure that parallels the dmv is sp_describe_first_result_set.
Specifically for T-SQL or batch related items there is a different DMV and accompanied system stored procedure. The DMV is sys.dm_exec_describe_first_result_set and the stored procedure that parallels the dmv is sp_describe_first_result_set.
Context
StackExchange Database Administrators Q#135365, answer score: 20
Revisions (0)
No revisions yet.