如何管理多个表、函数、存储过程和视图(SQL服务器)

How to manage multiple tables, function, stored procedures and views (SQL Server)

我的数据库中有多个对象,我想列​​出它们并提供一些描述、可接受的参数及其类型。我知道最快的方法是生成数据库脚本并收工,但是有没有更简单的方法来存档它?我将 Microsoft SSMS 2017 与 SQL Server 2012 一起使用。

可以查询tableINFORMATION_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

下面是这个查询在一个简单数据库上的输出: