快速清空sql数据库恢复到初始状态

来源:互联网 发布:2016qq邮件钓鱼源码 编辑:程序博客网 时间:2024/05/08 08:14

        今天完成了个项目,需要把sql数据库里所有的用户表数据删除。可以用TRUNCATE TABLE 或者DELETE  TABLE 来完成,但是必须一个个操作很麻烦。在网上找到了个很好用的批处理操作整理了下粘出来,希望对大家有帮助。

DECLARE @tablename varchar(50)
DECLARE @truncatesql varchar(255)
DECLARE TrCun_Cursor CURSOR FOR
select [name] from sysobjects where type = 'U'
--有条件的清空表 name<>'不想清空的表名'--
OPEN TrCun_Cursor
FETCH TrCun_Cursor INTO @tablename
WHILE(@@fetch_status = 0)
BEGIN
SET @truncatesql = 'truncate table ' + @tablename
--exec(@truncatesql) --当要删除时,就去掉--
PRINT @truncatesql
FETCH TrCun_Cursor INTO @tablename
END
CLOSE TrCun_Cursor
DEALLOCATE TrCun_Cursor