2013-03-15 43 views
4

那么,如果我想查找SQL SERVER中任何存储过程或函数的参数数量,那么执行此操作的正确方法是什么。查询在Sql Server中查找存储过程或函数中的参数数目?

您的帮助,将不胜感激。 谢谢。

+2

的[查找存储过程的参数名称]可能重复(http://stackoverflow.com/questions/7366912/find-的参数 - 名称对的一存储过程) – Pondlife 2013-03-15 16:23:16

回答

15

请尝试以下查询以获取存储过程的所有参数的列表。如果您只需要参数数量,请将选择更改为COUNT(*)。

SELECT 
    p.name AS Parameter,   
    t.name AS [Type] 
FROM sys.procedures sp 
JOIN sys.parameters p 
    ON sp.object_id = p.object_id 
JOIN sys.types t 
    ON p.system_type_id = t.system_type_id 
WHERE sp.name = '<name>' 
8

INFORMATION_SCHEMA.PARAMETERS应该是你所需要的...

SELECT * 
FROM INFORMATION_SCHEMA.PARAMETERS