一次性删除数据库中某库的所有存储过程的方法
DECLARE @Sp_Name varchar(30)??? --定義游標(biāo)操作
DECLARE @Tb_Count int
SET @Tb_Count = 0
DECLARE staff_cursor CURSOR FOR
?? SELECT [name] FROM sys.sysobjects
?? WHERE type='p' AND Category =0 --Category =0 表示
?? -- 打開游標(biāo)
OPEN staff_cursor
-- 提取記錄數(shù)據(jù)
FETCH Next FROM staff_cursor Into @Sp_Name
??? PRINT '開始刪除存儲(chǔ)過程'
??? WHILE @@fetch_status = 0
??? BEGIN
??????? SET @Tb_Count = @Tb_Count + 1
??????? EXEC('DROP PROCEDURE '? + @Sp_Name )
??????? PRINT CONVERT(varchar(20),@Tb_Count) + ': ' + @Sp_Name
??????? FETCH Next FROM staff_cursor Into @Sp_Name
??? END
??? print '總共刪除' +?? CONVERT(varchar(20),@Tb_Count) + '個(gè)存儲(chǔ)過程'
CLOSE staff_cursor?????? -- 關(guān)閉游標(biāo)
DEALLOCATE staff_cursor? -- 釋放游標(biāo)資源
?
轉(zhuǎn)載于:https://www.cnblogs.com/lisgang/archive/2012/03/04/2379462.html
總結(jié)
以上是生活随笔為你收集整理的一次性删除数据库中某库的所有存储过程的方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ubuntu11.10+git+svn
- 下一篇: PL/SQL-2 复合数据类型