SQLServer联机丛书:删除存储过程

SQLServer联机丛书:删除存储过程,第1张

SQLServer联机丛书:删除存储过程,第2张

删除存储过程您可以在不再需要存储过程时将其删除。如果另一个存储过程调用已删除的存储过程,Microsoft & regSQL Server & # 8482000将在执行调用过程时显示一条错误消息。但是,如果定义了一个具有相同名称和参数的新存储过程来替换被删除的存储过程,则引用该过程的其他过程仍然可以顺利执行。例如,如果存储过程proc1引用存储过程proc2,并且proc2被删除,但是由创建了另一个名为proc2的存储过程,现在proc1将引用这个新的存储过程,并且proc1不必重新编译。

一旦存储过程被分组,就不能删除组中的单个存储过程。删除存储过程将删除同一组中的所有存储过程。

丢弃过程

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

语法

DROP PROCEDURE { procedure } [,...n ]

参数

程序

要删除的存储过程或存储过程组的名称。过程名必须符合标识符规则。有关更多信息,请参见使用标识符。您可以选择是否指定进程所有者名称,但不能指定服务器名称和数据库名称。

n是一个占位符,表示可以指定多个过程。

注意
若要查看过程名称列表,请使用sp_help。若要显示过程定义(存储在syscomments系统表中),请使用sp_helptext。当删除存储过程时,有关该过程的信息将从sysobjects和syscomments系统表中删除。

不能删除组中的单个进程,但必须删除整个进程组。

无论用户定义的系统过程(前缀为sp_)是否是当前数据库,都会将其从master数据库中删除。如果在当前数据库中找不到系统过程,Microsoft & regSQL Server & # 8482请尝试将其从主数据库中删除。

权限
默认情况下,DROP PROCEDURE权限授予流程所有者,该权限不可转让。但是,db_owner和db_ddladmin固定数据库角色的成员以及sysadmin固定服务器角色的成员可以通过在DROP过程中指定所有者来删除任何对象。

示例
以下示例删除byroyalty存储过程(在当前数据库中)。

byroyaltyGO删除过程

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » SQLServer联机丛书:删除存储过程

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情