【发布时间】:2012-07-16 14:19:10
【问题描述】:
鉴于以下(表1):
Id Field1 Field2 ...
-- ------ -------
NULL 1 2
NULL 3 4
...
我想将 Field1 和 Field2 的值插入到不同的表(Table2)中。 Table2 有一个自增整数主键。我想从 Table2 中检索新的 PK 并更新上面的 Id 列(Table1)。
我意识到这不是传统的 - 这不是我需要定期做的事情,只是一次性完成一些迁移工作。我使用INSERT INTO, OUTPUT, INSERTED.Id 进行了一些尝试,但失败了。 “环回”到 Table1 中的 PK 必须与插入的 Field1/Filed2 的值相关联。
【问题讨论】:
-
每次插入 table2 后可能是“SELECT SCOPE_IDENTITY()”?
-
您在 INSERT INTO / OUTPUT / Inserted.Id 尝试中使用了什么代码?你应该能够让它发挥作用。
-
Field1/Field2 是否生成唯一键?
-
Tim - 不,Field1/Field2 不能保证生成唯一键。所以必须有某种插入顺序的记忆。
-
mwigdahl - 插入 Table2(Field1,Field) OUTPUT Inserted.Id into Table1 从 Table1 中选择 Field1,Field2。各种各样的尝试
标签: sql sql-server-2005