我的数据库中有多个对象,我想列出它们并给出一些描述、接受的参数及其类型。我知道最快的方法是生成一个数据库脚本并每天调用它,但是有没有更简单的方法来存档呢?我将 Microsoft SSMS 2017 与 SQL Server 2012 一起使用。
问问题
338 次
1 回答
1
您可以查询表INFORMATION_SCHEMA.PARAMETERS
(或sys.parameters
)。
这是一个简单的查询,可以提取您请求的一些数据;您可以以此为起点并详细说明以获得所需的输出:
select P.SPECIFIC_SCHEMA,
P.SPECIFIC_NAME,
R.ROUTINE_TYPE,
P.PARAMETER_MODE,
P.PARAMETER_NAME,
P.DATA_TYPE,
P.CHARACTER_MAXIMUM_LENGTH
from INFORMATION_SCHEMA.PARAMETERS P
inner join INFORMATION_SCHEMA.ROUTINES R ON P.SPECIFIC_CATALOG = R.ROUTINE_CATALOG
AND P.SPECIFIC_SCHEMA = R.ROUTINE_SCHEMA
AND P.SPECIFIC_NAME = R.ROUTINE_NAME
order by P.SPECIFIC_SCHEMA, P.SPECIFIC_NAME, P.PARAMETER_MODE, P.PARAMETER_NAME
下面是这个查询在一个简单数据库上的输出:
于 2017-06-06T13:13:59.210 回答