1. 简介
sys.procedures是一种系统存储过程,是SQL Server中的一个系统对象。它包含了该数据库中所有存储过程的所有信息,如名称、所有者、创建日期、是否为扩展存储过程、所属的模式等等。通过sys.procedures,我们可以快速地了解数据库中所有存储过程的基本情况。
2. 语法
USE [database_name];
GO
SELECT [name], [object_id], [schema_id], [type], [create_date], [modify_date]
FROM sys.procedures;
GO
该语法查询了数据库中所有存储过程的名称、对象ID、模式ID、类型、创建日期和修改日期。
3. 参数说明
3.1 name
名称是该存储过程的唯一标识符。
3.2 object_id
对象ID是数据库分配给该存储过程的唯一标识符。
3.3 schema_id
模式ID是该存储过程所属模式的唯一标识符。
3.4 type
类型指示存储过程的类型,如扩展存储过程、本地存储过程等。
3.5 create_date
创建日期是该存储过程创建的日期和时间,格式为YYYY-MM-DD HH:MI:SS。
3.6 modify_date
修改日期是该存储过程修改的日期和时间,格式为YYYY-MM-DD HH:MI:SS。
4. 应用示例
下面的示例演示了如何使用sys.procedures查找数据库中所有存储过程的名称、对象ID、模式ID、类型、创建日期和修改日期:
USE [AdventureWorks2017];
GO
SELECT [name], [object_id], [schema_id], [type], [create_date], [modify_date]
FROM sys.procedures;
GO
查询结果如下:
name | object_id | schema_id | type | create_date | modify_date
-------------------------------|-----------|-----------|------|----------------------|---------------------
uspGetEmployeeManagers | 125910584 | 1 | P | 2016-11-11 13:05:01.893 | 2016-11-11 13:05:01.893
uspPrintError | 161576757 | 1 | P | 2014-03-05 16:26:04.927 | 2014-03-05 16:26:04.927
uspUpdateEmployeeHireInfo | 148786255 | 1 | P | 2014-01-12 11:00:46.727 | 2014-01-12 11:00:46.727
...
上面的结果列出了AdventureWorks2017数据库中的前三个存储过程的名称、对象ID、模式ID、类型、创建日期和修改日期。
5. 总结
sys.procedures是SQL Server中的一个重要系统存储过程,它允许我们查找数据库中所有存储过程的基本信息。通过该存储过程,我们可以方便地了解到存储过程的名称、对象ID、模式ID、类型、创建日期和修改日期等信息,便于我们管理和维护数据库。