0

我想将数据从一个数据库复制到另一个,但我想保留原始数据库中的主键,这样它就不会弄乱关系。我正在使用 SQL Server 2008。

4

3 回答 3

2

如前所述,IDENTITY_INSERT 是您要为每个表设置的标志,以允许您在标识列上为每个插入的记录设置特定值。

但是,如果您只是想复制整个现有数据库(或大部分),而不仅仅是复制几个表,我建议您只对数据库进行完整备份,将 BAK 文件恢复为新的数据库名称,然后对克隆进行修改。

于 2010-04-03T17:32:59.030 回答
1

我假设您的主键是 IDENTITY?如果是这样,您应该对表使用SET IDENTITY_INSERT ON(一次只能使用一个表) - 如果您使用 SSIS 或类似工具进行传输,通常有一个选项允许您插入身份。

于 2010-04-03T17:08:50.643 回答
0

您可以使用bcp命令来完成这项工作。使用 bcp 命令,您可以批量复制数据。这个命令有一个保持你身份的开关。

要查看更多详细信息,请访问此链接

于 2010-04-04T03:31:25.533 回答