无法执行该操作,因为链接服务器“(null)”的OLE DB提供程序“SQLNCLI10”无法启动分布式事务

时间:2011-06-20 06:12:49

标签: java sql-server-2008 oledb

我使用连接池连接SQL Server 2008。

使用JNDI名称使用XA连接来访问DB服务器。现在我的所有查询都正确执行,除了使用OPENROWSET的查询。

现在这个OPENROWSET在正常连接时运行良好但在使用XA连接执行时会出现异常:

  

无法执行操作,因为链接服务器“(null)”的OLE DB提供程序“SQLNCLI10”无法启动分布式事务。

任何人都可以帮我解决这个问题吗? 如果您不理解请重播,我会解释更多。

1 个答案:

答案 0 :(得分:0)

试试这个:

在SQL Server Management Studio中连接到您的数据库,展开“服务器对象”,然后展开“链接服务器”,然后右键单击相关链接服务器并选择“属性”。选择“服务器选项”'页面,并确保'启用分布式交易的推广'设置为“假”'

或者你可以使用T-SQL

来完成
USE master;
EXEC sp_serveroption '<<your linked server name>>', 'remote proc transaction promotion', 'false';