0

我的数据库中到处都有 FK 和 PK,需要按特定顺序指定表数据,否则我会收到 FK/PK 插入错误。我厌倦了一次又一次地执行向导来一次传输一个表的数据。

在 SQL Server 导出数据向导中,有一个“编写查询以指定要传输的数据”的选项。我想自己编写查询并指定正确的顺序。

  1. 这会解决我的问题吗?

  2. 我该怎么做呢?你能提供一个示例查询(或链接到一个)

    • 数据库位于两台不同的服务器上 - 每个服务器上都有 SQL Server 2008;数据库名称和权限相同;每个表名 & col 都是一样的;我需要为每个表插入身份。
4

3 回答 3

1

导入前禁用外键,导入后启用:

ALTER TABLE tablename NOCHECK CONSTRAINT ALL

ALTER TABLE tablename WITH CHECK CHECK CONSTRAINT ALL

更新:感谢您的评论,我修复了语法。

于 2010-05-07T20:49:40.950 回答
1

您始终可以保存包,然后打开并编辑包以将内容按正确的顺序排列(您可能必须多次复制数据流并在它们之间放置依赖关系)

于 2010-05-07T22:50:55.860 回答
0

您可以使用第 3 方工具传输数据;这些工具会自动禁用/启用约束。

于 2010-05-12T19:24:44.343 回答