首页 新闻 会员 周边 捐助

请问SQLSERVER2005如何删除所有存储过程

0
悬赏园豆:5 [已解决问题] 解决于 2013-07-04 13:37

我想删除一个数据库里的所有存储过程,想用TSQL来实现,请问有这样的TSQL语句吗?

桦仔的主页 桦仔 | 菜鸟二级 | 园豆:262
提问于:2013-07-03 23:53
< >
分享
最佳答案
0
select * from sys.procedures

这段sql可以查出所有的存储过程,然后,哈哈~~?

declare @sql varchar(4000)
set @sql=''
select @sql=@sql+'drop proc '+name+';   ' from sys.procedures
print @sql
exec(@sql)
收获园豆:5
幻天芒 | 高人七级 |园豆:37207 | 2013-07-04 01:19
其他回答(2)
0

1. 在Management Studio中,选中对应的数据库->Programmability->Stored Procedures

2. 按F7键,在右侧的窗口中选中除System Stored Procedures之外的所有存储过程

3. 点击鼠标右键,选择“删除”

dudu | 园豆:29732 (高人七级) | 2013-07-04 07:14

用TSQL,不能用GUI界面来删除

支持(0) 反对(0) 桦仔 | 园豆:262 (菜鸟二级) | 2013-07-04 09:13

@桦仔: 那就是是一楼的方法呗

支持(0) 反对(0) chenping2008 | 园豆:9836 (大侠五级) | 2013-07-04 09:24
0

declare @procName varchar(500)

declare cur cursor

for select [name] from sys.objects where type = 'p'

open cur

fetch next from cur into @procName

while @@fetch_status = 0

begin

if @procName <> 'DeleteAllProcedures'

exec('drop procedure ' + @procName)

fetch next from cur into @procName

end

close cur

deallocate cur

听雨者 | 园豆:44 (初学一级) | 2013-07-04 11:19
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册