SQL Server2008批量删除数据使我们在使用SQL Server2008数据库时经常要用到的操作,下面就为您介绍SQL Server2008批量删除数据的方法,供您参考。
- -- 测试数据
- create table dbo.temptb_1 (id int);
- create table guest.temptb_2 (id int);
- -- 打开隐式事务
- SET IMPLICIT_TRANSACTIONS ON
- -- 执行动态删除
- --定义一个变量
- declare @sql varchar(max);
- set @sql='';
- select @sql=@sql+'drop table '+
- --获取表名称,形如:dbo.temptb_***,escape '\'表示'\'为转义符号
- QUOTENAME(SCHEMA_NAME([schema_id]))+'.'+QUOTENAME([name])+';'
- from sys.tables where where is_ms_shipped =0 and [name] like 'temptb\_%' escape '\'
- -- select @sql;
- EXEC(@sql);
- -- 检查删除是否正确
- select * from sys.tables
- -- 正确,则提交事务,确认删除
- commit tran
- -- 不正确,则回滚事务,取消删除
- rollback tran
- -- 关闭隐式事务
- SET IMPLICIT_TRANSACTIONS OFF
【编辑推荐】