mssql sql server 快速生成sql脚本,达到清空全部表格所有数据的方法分享


摘要:
在日常的项目开发中,上线期初,我们常常要将系统中的数据表测试数据全部清空,方便正式上线运行,下文讲述使用快速生成脚本的方法


实现思路:
借助系统存储过程 sp_MSforeachtable 和脚本 truncate table达到快速遍历表,并生成相应脚本 ,如下所示:

 ---当数据表无外键的情况,可使用以下方式:
  exec sp_MSforeachtable 'truncate table ?'

---当数据表有外键的情况,可使用以下生成脚本,先生成禁用外键脚本,然后再生成清除数据脚本
--禁用外键
exec sp_MSforeachtable 'alter table ? nocheck constraint all'
--清空各表数据
exec sp_MSforeachtable 'truncate table ?'
--启用外键
exec sp_MSforeachtable 'alter table ? check constraint all'