0
点赞
收藏
分享

微信扫一扫

SQL删除表名包含指定字符的所有表


CREATE PROCEDURE dbo.PROC_DELTABLE
AS
DECLARE @TABLENAME AS NVARCHAR(128)
DECLARE cur_del CURSOR FOR

–以下有3种不同的筛选方式,反注释即可使用

–删除表名以KCPD开头的所有表:’KCPD%’
select name from sysobjects where type=’U’ and name like ‘KCPD%’

–删除表名包含KCPD的所有表:’%KCPD%’
–select name from sysobjects where type=’U’ and name like ‘%KCPD%’

–删除表名以KCPD结尾的所有表:’%KCPD’
–select name from sysobjects where type=’U’ and name like ‘%KCPD’

OPEN cur_del 
FETCH NEXT FROM cur_del INTO @TABLENAME
WHILE(@@FETCH_STATUS=0)
BEGIN
PRINT ‘drop table ‘+@TABLENAME
EXEC(‘drop table ‘+@TABLENAME)
FETCH NEXT FROM cur_del INTO @TABLENAME
END
CLOSE cur_del
DEALLOCATE cur_del
GOEXEC PROC_DELTABLE


举报

相关推荐

0 条评论