虚拟主机上sqlserver快速删除表和视图及存储过程的sql语句

删除表

1
2
3
4
5
6
7
8
9
10
use 数据库名称
declare @sql varchar(8000)
while (select count(*) from sysobjects where type='U')>0
begin
SELECT @sql='drop table ' + name
FROM sysobjects
WHERE (type = 'U')
ORDER BY 'drop table ' + name
exec(@sql)
end

删除视图

1
2
3
4
5
6
declare   @sql   varchar(8000)
set @sql=''
select @sql=@sql+ ', '+name from sysobjects
where type= 'V ' and name not in( 'syssegments ', 'sysconstraints ')
set @sql= 'drop view '+stuff(@sql, 1, 1, ' ')
exec(@sql)

删除存储过程

1
2
3
4
5
6
use 数据库名称
declare @tname varchar(8000)
set @tname=''
select @tname=@tname + Name + ',' from sysobjects where xtype='P'
select @tname='drop Procedure ' + left(@tname,len(@tname)-1)
exec(@tname)

转载自:http://www.ovzxen.com/post-38.html