DROP PROCEDURE (Transact-SQL)

从 SQL Server 2014 的当前数据库中删除一个或多个存储过程或过程组。

适用范围:SQL Server(SQL Server 2008 至当前版本),Windows Azure SQL Database(初始版本至当前版本)。

主题链接图标 Transact-SQL 语法约定

语法

DROP { PROC | PROCEDURE } { [ schema_name. ] procedure } [ ,...n ]

参数

  • schema_name
    过程所属架构的名称。 不能指定服务器名称或数据库名称。

  • procedure
    要删除的存储过程或存储过程组的名称。 不能删除编号过程组内的单个过程;但可删除整个过程组。

最佳做法

在删除任何存储过程之前,请检查依赖对象,并且相应地修改这些对象。 如果没有更新这些对象,则删除存储过程可能会导致依赖对象和脚本失败。 有关详细信息,请参阅查看存储过程的依赖关系

元数据

若要显示现有过程的列表,请查询 sys.objects 目录视图。 若要显示过程定义,请查询 sys.sql_modules 目录视图。

安全性

权限

要求对该过程拥有 CONTROL 权限,或者对该过程属于的架构拥有 ALTER 权限,或者在 db_ddladmin 固定服务器角色中拥有成员身份。

示例

下面的示例将删除当前数据库中的 dbo.uspMyProc 存储过程。

DROP PROCEDURE dbo.uspMyProc;
GO

下面的示例将删除当前数据库中的多个存储过程。

DROP PROCEDURE dbo.uspGetSalesbyMonth, dbo.uspUpdateSalesQuotes, dbo.uspGetSalesByYear;

请参阅

参考

ALTER PROCEDURE (Transact-SQL)

CREATE PROCEDURE (Transact-SQL)

sys.objects (Transact-SQL)

sys.sql_modules (Transact-SQL)

概念

删除存储过程