语句用法很简单,只需要把下面这句话 USE 后面的汉字替换为你想清除空表的数据库名称即可。
use 你要清理的数据库名称
declare My_Cursor cursor for
select a.name from sysobjects as a inner join sysindexes as b
on a.id=b.id where (a.type=‘u’) and (b.indid in(0,1) )
and b.rows=‘0’
order by name
open My_Cursor;
declare @base varchar(200),@sql varchar(1000)
FETCH NEXT FROM My_Cursor into @base
WHILE @@FETCH_STATUS = 0
BEGIN
set @sql=‘drop table dbo.[’+@base+’]’
FETCH NEXT FROM My_Cursor into @base
exec sp_sqlexec @sql
print @sql
END
CLOSE My_Cursor;
DEALLOCATE My_Cursor;@TOC