SQL数据库编程

自由职业个体,提供SQL数据库编程开发和性能优化技术服务,提供C# .NET软件开发技术服务。同名微信公众号【SQL数据库编程】

博客园 首页 新随笔 联系 订阅 管理

问题:
有时已有项目要移植,例如原来在广州地区使用的某系统,突然说惠州那边也要用这套一样的系统。或者,在demo环境下弄了一些测试数据。然后要清空全部表数据。
如果表比较多的话,逐个表手工编写脚本就太麻烦了。

解决方案:
本博主就教教大家怎么仅用一个简单语句快速删除全库各表数据,全部清空数据。
使用系统存储过程sp_MSforeachtable结合truncate table语句。达到快速删除数据库各表全部数据的目的。

脚本(如果没有外键)

/*
    说明:本脚本用于清空数据库各表数据,请谨慎使用,请提前备份好数据库,如因本脚本执行而造成的删库跑路问题,责任一概与本博主无关
    脚本来源:https://www.cnblogs.com/zhang502219048/p/11067023.html
*/
exec sp_MSforeachtable 'truncate table ?'

脚本(如果有外键):

/*
    说明:本脚本用于清空数据库各表数据,请谨慎使用,请提前备份好数据库,如因本脚本执行而造成的删库跑路问题,责任一概与本博主无关
    脚本来源:https://www.cnblogs.com/zhang502219048/p/11067023.html
*/

--禁用外键
exec sp_MSforeachtable 'alter table ? nocheck constraint all'
--清空各表数据
exec sp_MSforeachtable 'truncate table ?'
--启用外键
exec sp_MSforeachtable 'alter table ? check constraint all'

【转载请注明博文来源:https://www.cnblogs.com/zhang502219048/p/11067023.html

posted on 2019-06-21 22:09  张工502219048  阅读(1929)  评论(0)    收藏  举报