批量删除数据库表

由于工作的原因,有时候会对数据库表进行批量的处理,这时候我们可以用游标对数据库进行批量删除表操作

DECLARE @Table NVARCHAR(30)
DECLARE tmpCur CURSOR FOR
SELECT name FROM sys.objects WHERE TYPE=‘U‘ AND name LIKE N‘HSUPA%‘
OPEN tmpCur
FETCH NEXT FROM tmpCur INTO @Table

WHILE @@FETCH_STATUS = 0
BEGIN
    DECLARE @sql VARCHAR(100)
    SELECT @sql = ‘drop table ‘ + @Table
    EXEC(@sql)
    FETCH NEXT FROM tmpCur INTO @Table
END
CLOSE tmpCur
DEALLOCATE tmpCur

  

时间: 2024-12-18 23:36:29

批量删除数据库表的相关文章

mysql批量删除数据库表

SELECT CONCAT( 'DROP TABLE ', GROUP_CONCAT(table_name) , ';' ) AS statement FROM information_schema.tables WHERE table_schema = 'video' AND table_name LIKE 't_c%';

php批量删除数据库下指定前缀的表

如何用php批量删除数据库下所有前缀为prefix_的表. 例子,统一删除前缀为"prefix_"的表. <?php //设置数据库连接信息.数据库服务器地址,数据库用户名,数据密码 mysql_connect('数据库主机','数据库用户名','数据库密码'); //设置查询的数据库名称 mysql_select_db('数据库名'); $rs=mysql_query('show tables'); while($arr=mysql_fetch_array($rs)) { ww

php怎么批量删除数据库下指定前缀的表?

如何用php批量删除数据库下所有前缀为prefix_的表. 例子,统一删除前缀为"prefix_"的表. <?php //设置数据库连接信息.数据库服务器地址,数据库用户名,数据密码 mysql_connect('数据库主机','数据库用户名','数据库密码'); //设置查询的数据库名称 mysql_select_db('数据库名'); $rs=mysql_query('show tables'); while($arr=mysql_fetch_array($rs)) { ww

批量更改数据库表架构(生成sql后直接执行!)

批量更改数据库表架构(生成sql后直接执行!) use my_test; --当前数据库 declare @alltable varchar(1000), @SchemaOld varchar(1000), @SchemaNew varchar(1000), @NewSql VARCHAR(max), @Index INT; SET @SchemaOld='';--原架构名称 SET @SchemaNew='';--新架构名称 SET @NewSql=''; SET @Index=1; SELE

批量删除数据库的SQL语句

由于项目需要,每次运行case的时候都需要创建数据库.虽然每次执行结束都会删除,但是不保证每次都能删除成功(这里有许多原因,我就不列举了).所以我写了个脚本去批量删除数据库.首先为确保我们的数据库是有用的,不被错删除的.所以就必须先备份在删除. 备份数据库: DECLARE @name VARCHAR(50) -- database name DECLARE @path VARCHAR(256) -- path for backup files DECLARE @fileName VARCHAR

SQL批量删除用户表(先删除所有外键约束,再删除所有表)

--批量删除用户表 --1.删除外键约束DECLARE c1 cursor for     select 'alter table ['+ object_name(parent_obj) + '] drop constraint ['+name+']; '    from sysobjects     where xtype = 'F'open c1declare @c1 varchar(8000)fetch next from c1 into @c1while(@@fetch_status=0

基于CentOS的MySQL学习补充三--使用Shell批量创建数据库表

本文出处:http://blog.csdn.net/u012377333/article/details/47006087 接上篇介绍<基于CentOS的Mysql学习补充二--使用Shell创建数据库>,本文继续探索关于Shell和MySQL的结合使用,我不知道当一个数据库设计完成之后如何快速的创建设计好的数据库表和添加相应基本数据,我目前知道的就是使用Shell和SQL脚本来达到我的目的--快速的.多次的.可重复利用的创建数据库表. 创建一个数据库表的SQL脚本: /***********

2019/1/15 批量删除数据库相关数据

目的:删除数据库各个系统his库里的测试soe与故障数据:一.sql执行错误:执行sql:SELECT FROM SOE WHERE sDevCode = 012400000001报错:[SQL Server]将 varchar 转换为数据类型 numeric 时出现算术溢出错误.原因:查看表设计,sDevCode列的类型为varchar(字符串),修改:SELECT FROM SOE WHERE sDevCode = '012400000001' .二.脚本: -- coding:UTF-8

批量删除 添加 表主键 sql-- 存储过程

sql 批量操作添加/ 删除 表主键 直接上代码把:  是存储过程哦 , GOSET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOALTER proc [dbo].[prc_name] (@nameinfo nvarchar(50) output)AS declare @Key NVARCHAR(MAX) --创建参数 返回创建主键declare @tab NVARCHAR(MAX) --创建参数 返回 表declare @tabs NVARCHAR(MAX