我已经将 2 个 Microsoft SQL 服务器链接在一起,我们称它们为 LinkedServer1 和 Server2。我正在尝试使用带有 OUTPUT 的 INSERT 脚本从第二个插入数据以获取自动递增的 id:
DECLARE @newIdHolderTable TABLE (Id INT)
INSERT INTO [LinkedServer1].[Db1].[dbo].[Table1]
(Field1
,Field2)
OUTPUT inserted.ID INTO @newIdHolderTable
SELECT
Field1
,Field2
FROM [Server2].[Db1].[dbo].[Table1]
WHERE [Id] = @Id
不幸的是,这失败并显示错误消息:
远程表不能用作包含 OUTPUT 子句或嵌套 DML 语句的语句中的 DML 目标。
如何将值插入链接的 SQL Server 表并获取新 ID?