sql server编写一个语句脚本自动清空各表数据以初始化数据库

问题:
有时已有项目要移植,例如原来在广州地区使用的某系统,突然说惠州那边也要用这套一样的系统。或者,在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

上一篇:20145317彭垚 《Java程序设计》第5周学习总结


下一篇:MySql存储过程