SQL问题——删除前辍一样的表格

来源:百度知道 编辑:UC知道 时间:2024/05/10 10:18:18
如何删除前辍一样的表格

declare @sql varchar(8000)
set @sql=''

SELECT @sql=@sql+'drop table '+ name + ' '
FROM sysobjects
WHERE type = 'U' and xtype='U' and [name] like '前缀%'

exec(@sql)

/*使用游标删除临时表*/
declare @tName nvarchar(200) --定义变量来保存表名
declare mycursor cursor for select name
from sysobjects
where name like 'tmp%' --/*在这里修改你的前缀*/
and type=N'U' --该条件确定是表

declare @strSql varchar(1000)

open mycursor --打开游标

fetch next from mycursor into @tName --提取第一条数据
while(@@fetch_status=0) --如果提取到数据
begin
set @strSql='drop table '+@tName
print(@strsql)
--删除这些表 ,将下行的注释去掉
--exec(@strsql)
fetch next from mycursor into @tName --提取下一条数据
end

close mycursor --关闭游标
deallocate mycursor --删除游标

建立存储过程,在存储过程中建立一个你要删除的表的游标:
select name from s