从 SQL Server 数据库中删除所有数据,然后从另一个数据库重新输入数据?

5
我有一个过时的数据库,但我想将这个数据库中的数据保留在当前工作数据库的单独版本中。我已经创建了当前数据库的副本,但它包含了所有新数据。有没有一种方法可以删除所有这些数据,然后从过时的数据库中导入数据?
1个回答

8
尝试使用以下方法删除数据:
-- disable all constraints
EXEC sp_msforeachtable "ALTER TABLE ? NOCHECK CONSTRAINT all"

-- delete data in all tables
EXEC sp_MSForEachTable "DELETE FROM ?"

-- enable all constraints
exec sp_msforeachtable "ALTER TABLE ? WITH CHECK CHECK CONSTRAINT all"

导入数据的步骤如下:

  1. 在 Microsoft SQL Server Management Studio Express 中展开数据库。
  2. 右键单击包含要复制到另一个数据库的对象的数据库。
  3. 单击“任务”,然后选择“生成脚本...”这将打开脚本向导,该向导基本上是自我解释的:
  4. 选择数据库(应为预先选定的数据库),
  5. 选择选项(第一次可能只接受默认选择),
  6. 选择要编写脚本的对象类型(存储过程、用户定义函数等),
  7. 选择要编写脚本的具体对象,并指定输出脚本的位置(选择“脚本到新查询窗口”以方便操作)。

完成后,返回带有已编写脚本对象的查询窗口。 更改 USE 指令(第一行)以指向目标数据库(例如,USE [Northwind]),然后执行脚本。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接