来源于涛涛
CREATE PROCEDURE sp_DeleteAllData AS
EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL' --禁用约束
EXEC sp_MSForEachTable 'ALTER TABLE ? DISABLE TRIGGER ALL' --禁用触发器
EXEC sp_MSForEachTable 'DELETE FROM ?' --删除数据(低效,通用)
--EXEC sp_MSForEachTable 'TRUNCATE TABLE ?' --删除数据(高效,只适用于没有"FOREIGN KEY 约束"的表)
EXEC sp_MSForEachTable 'ALTER TABLE ? CHECK CONSTRAINT ALL' --启用约束
EXEC sp_MSForEachTable 'ALTER TABLE ? ENABLE TRIGGER ALL' --启用触发器
EXEC sp_MSFOREACHTABLE 'SELECT * FROM ?' --验证
GO