我有两张桌子,Table_1
和Table_2
。
Table_1
有列PK
(autoincrementing int
) 和Value
( nchar(10)
)。
Table_2
有FK
( int
)、Key
( nchar(10)
) 和Value
( nchar(10)
)。
也就是说,Table_1
是一个数据表,Table_2
是一个键值对存储,其中的一行Table_1
可能对应于 0、1 个或多个键和值Table_2
。
我想编写代码,以编程方式构建一个查询,该Table_1
查询Table_2
使用Table_1
.
我可以用一行轻松完成:
INSERT INTO Table_1 ([Value])
OUTPUT INSERTED.PK, 'Test1Key', 'Test1Val' INTO Table_2 (FK, [Key], [Value])
VALUES ('Test')
但是 SQL 似乎不喜欢拥有多行的想法。这失败了:
INSERT INTO Table_1 ([Value])
OUTPUT INSERTED.PK, 'Test1Key', 'Test1Val' INTO Table_2 (FK, [Key], [Value])
OUTPUT INSERTED.PK, 'Test2Key', 'Test2Val' INTO Table_2 (FK, [Key], [Value])
OUTPUT INSERTED.PK, 'Test3Key', 'Test3Val' INTO Table_2 (FK, [Key], [Value])
VALUES ('Test')
有什么办法可以使这项工作?