摘要: 下文讲述清空数据库中所有表信息的方法分享,如下所示: 实验环境:sql server 2008
实现思路: 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
此方法请谨慎使用,因为执行后,会导致所有数据丢失,并且不可恢复, 如出现外键约束,最好先删除外键信息,