是否可以将远程存储过程的结果插入到临时表中?例如
CREATE TABLE #test(id INT)
INSERT INTO #test
EXEC [linkedserver].remoteDB.dbo.tst
DROP TABLE #test
其中 tst 是返回 ID 的存储过程。
如果我单独运行 exec,它工作正常
EXEC [linkedserver].remoteDB.dbo.tst
但是,当我将其作为插入的一部分时,我收到此错误
“链接服务器“linkedserver”的 OLE DB 提供程序“SQLNCLI”返回消息“合作伙伴事务管理器已禁用其对远程/网络事务的支持。”。 消息 7391,16 级,状态 2,第 2 行 无法执行该操作,因为链接服务器“linkedserver”的 OLE DB 提供程序“SQLNCLI”无法开始分布式事务。”
一台机器运行 SQL Server 2005,另一台机器运行 SQL Server 2008,两者都运行“分布式事务协调器”服务。
最佳答案
在我看来,对远程事务的支持尚未正确启用。
您是否尝试按照此处的说明进行操作:
关于sql-server - 从链接服务器插入存储过程的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6874697/