sql – 如何获取存储过程参数的详细信息?

在哪里可以找到有关存储过程参数的信息?在我的情况下,我只需要知道给定存储过程的输入参数.

在sys.objects中,只有关于该过程的常见详细信息.在sys.sql_modules中,我可以提取过程的整个SQL文本.

As(在SQL Server Management studio中)我能够在选择过程名称时使用ALT F1在表格视图中提取有关参数的信息,我希望有一些地方可以通过这种方式提取它们.

最佳答案
select  
   'Parameter_name' = name,  
   'Type'   = type_name(user_type_id),  
   'Length'   = max_length,  
   'Prec'   = case when type_name(system_type_id) = 'uniqueidentifier' 
              then precision  
              else OdbcPrec(system_type_id, max_length, precision) end,  
   'Scale'   = OdbcScale(system_type_id, scale),  
   'Param_order'  = parameter_id,  
   'Collation'   = convert(sysname, 
                   case when system_type_id in (35, 99, 167, 175, 231, 239)  
                   then ServerProperty('collation') end)  

  from sys.parameters where object_id = object_id('MySchema.MyProcedure')

转载注明原文:sql – 如何获取存储过程参数的详细信息? - 代码日志