按名称删除存储过程组

Kat*_*ate 9 sql t-sql stored-procedures

我有一组名为'somename_%'的存储过程.有没有办法用一个查询删除该SP,例如

DROP PROCEDURE的名称如'somename_%'

.

Mar*_*ith 12

这适用于MSSQL 2005 +

DECLARE @DropScript varchar(max)
set @DropScript = ''

SELECT @DropScript = @DropScript + 'DROP PROCEDURE [' + schema_name(schema_id)+ '].' + '[' + name + ']
' FROM sys.procedures
where name like 'somename_%'


exec (@DropScript)
Run Code Online (Sandbox Code Playgroud)