【发布时间】:2010-11-07 00:13:57
【问题描述】:
我想彻底清除数据库并重置数据。最快的方法是什么?或者,删除表中所有行的命令是什么(我将对所有表重复该过程)?
谢谢
【问题讨论】:
标签: sql sql-server
我想彻底清除数据库并重置数据。最快的方法是什么?或者,删除表中所有行的命令是什么(我将对所有表重复该过程)?
谢谢
【问题讨论】:
标签: sql sql-server
这种方法可以让您从所有表中删除内容,即使是那些被外键约束引用的表。您可以对其进行增强,使其检查是否存在外键约束,并在这些情况下执行TRUNCATE TABLE。
EXEC sp_msforeachtable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
EXEC sp_msforeachtable 'DELETE FROM ?'
EXEC sp_msforeachtable 'ALTER TABLE ? WITH CHECK CHECK CONSTRAINT ALL'
【讨论】:
use X?
如果您不想编写脚本并删除表格,有多种方法可以通过循环来执行此操作。这可能是最简单的:
sp_MsForEachTable '截断表?'
【讨论】:
删除数据库并重新创建它。
【讨论】:
使用 SQL Server Management Studio 为表编写 DROP 和 CREATE 语句的脚本,然后运行该脚本。右键单击数据库并选择任务 --> 生成脚本。运行向导(确保选中“Choose Script Options”步骤中的 Script Drop 选项)并选择所有表。生成的脚本应该删除所有表,然后重新创建它们。
【讨论】: