当我将数据从一个表复制到另一个表时,所有主键值都被重置。有没有办法保持原始表的值。
原始表中的主键值(int)不是连续的(已删除的行)
另一个表的所有值都是硬编码的,这就是为什么我需要保持相同的值。
答案 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