查看存储过程的定义 - SQL Server

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Azure Synapse AnalyticsMicrosoft Fabric中的仓库Microsoft Fabric中的SQL数据库

查看存储过程的定义

本文介绍如何在 对象资源管理器 或 T-SQL 中查看过程的定义。

使用 SQL Server Management Studio

在对象资源管理器中查看过程的定义:

在对象资源管理器中,连接到 数据库引擎 的实例,然后展开该实例。

展开 Databases,展开该过程所属的数据库,然后展开 Programmability。

展开“存储过程”,右键单击该过程,再选择“编写存储过程脚本为”,然后选择下列选项之一:“创建到”、“更改到”或“删除和创建到”。

选择“新建查询编辑器窗口”。 这将显示过程定义。

使用 Transact-SQL

在 T-SQL 中,你可以使用以下三条命令之一:

sp_helptext

OBJECT_DEFINITION

sys.sql_modules

Note

Azure Synapse Analytics 不支持系统存储过程 sp_helptext。 而是改用 sys.sql_modules 对象目录视图。

使用sp_helptext

在“对象资源管理器”中,连接到数据库引擎的实例。

在工具栏上,选择新建查询。

在查询窗口中,输入以下使用 sp_helptext 系统存储过程的语句。 更改数据库名称和存储过程名称以引用所需的数据库和存储过程。

USE AdventureWorks2022;

GO

EXEC sp_helptext N'AdventureWorks2022.dbo.uspLogError';

使用OBJECT_DEFINITION

在“对象资源管理器”中,连接到数据库引擎的实例。

在工具栏上,选择新建查询。

在查询窗口中,输入以下使用 OBJECT_DEFINITION 系统函数的语句。 更改数据库名称和存储过程名称以引用所需的数据库和存储过程。 此查询利用 OBJECT_ID 和 OBJECT_DEFINITION 以三部分名称标识对象。

USE AdventureWorks2022;

GO

SELECT OBJECT_DEFINITION (OBJECT_ID(N'AdventureWorks2022.dbo.uspLogError'));

使用 sys.sql_modules

在“对象资源管理器”中,连接到数据库引擎的实例。

在工具栏上,选择新建查询。

在查询窗口中,输入以下使用 sys.sql_modules 目录视图的语句。 更改数据库名称和存储过程名称以引用所需的数据库和存储过程。

USE AdventureWorks2022;

GO

SELECT [definition]

FROM sys.sql_modules

WHERE object_id = (OBJECT_ID(N'dbo.uspLogError'));

相关内容

创建存储过程

修改存储过程

删除存储过程

重命名存储过程