實現思路: 1.禁用所有約束,外鍵 2.禁用所有觸發器 3.刪除表數據 4.開啟觸發器 5.開啟約束
CREATE PROCEDURE proc_deleteDateSql /* 生成清除數據庫表數據的腳本方法分享 */ 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 'ALTER TABLE ? CHECK CONSTRAINT ALL' EXEC sp_MSForEachTable 'ALTER TABLE ? ENABLE TRIGGER ALL' EXEC sp_MSFOREACHTABLE 'SELECT * FROM ?' GO --生成腳本信息 exec proc_deleteDateSql go drop proc proc_deleteDateSql go