SQL删除表名包含指定字符的所有表
2015-04-14 10:10
369 查看
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
GO
EXEC 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
GO
EXEC PROC_DELTABLE
相关文章推荐
- 如何删除某列的行值中包含两个 c 字符的所有行------patindex函数的使用
- 如何删除文本或excel表格内包含某一字符的所有行
- 删除指定目录下大小为0的所有文件(包含子目录)
- 编程实现删除字符串中所有指定的字符
- 包含所有指定字符的最小子串(shortest substring containing all given characters)
- SQL 检索所有存储过程中是否包含某字符
- sql - 查询所有表中包含指定值
- 查询包含指定字段的所有表名的SQL脚本
- 用SQL替换最后一个指定字符后面的所有字符
- 删除字符串中所有指定的字符
- [SQL]SUTFF内置函数的用法 (删除指定长度的字符并在指定的起始点插入另一组字符)
- Centos 查看路径下所有文件中是否包含指定字符
- SQL删除字段中所有内容中的第一个字符
- SQL存储过程之删除指定表中所有索引
- sql语句查询包含某些字符的所有存储过程
- SQL存储过程之删除指定表中指定字段所有约束
- 【Linux】Linux删除指定文件夹下面 名称不包含指定字符的文件
- vim 删除包含指定字符的行
- 编程实现删除字符串中所有指定的字符
- SQL查询包含指定列的所有表