保留数据库中的主键值

时间:2009-05-10 02:56:16

标签: sql-server

当我将数据从一个表复制到另一个表时,所有主键值都被重置。有没有办法保持原始表的值。

原始表中的

主键值(int)不是连续的(已删除的行)

另一个表的所有值都是硬编码的,这就是为什么我需要保持相同的值。

1 个答案:

答案 0 :(得分:5)

您可以通过设置IDENTIY_INSERT ON

来执行此操作

如果两个表具有相同的列,则可以执行以下操作:

SET IDENTITY_INSERT Table2 ON
INSERT Table2(pkId, Field2, Field3,...)
SELECT pkId, Field2,Field3,... FROM Table1
SET IDENTITY_INSERT Table2 OFF