我正在尝试使用SQL Server 2000为单个Oracle链接服务器执行分布式事务,我想出了以下脚本:
BEGIN DISTRIBUTED TRANSACTION;
SET XACT_ABORT off;
GO
SELECT MAX(DEPTNO)+1,
FROM [WSF08_CONTA_ORADATA_II]..[SCOTT].DEPT
SET XACT_ABORT on;
GO
COMMIT TRANSACTION;
一旦运行脚本,我会得到以下错误,然后是SQL Management Studio冻结和关闭连接。
消息7399,级别16,状态1,第3行
链接服务器“wsf08”的OLE DB提供程序“oraoledb.oracle”报告了一个错误。提供程序报告意外的灾难性故障。
消息7303,级别16,状态1,第3行
无法为链接服务器“wsf08_conta_oradata_ii”初始化OLE DB访问接口“oraoleb.oracle”的数据源对象。
怎么回事?
* P.D:
-
我可以使用常规查询创建/更新/删除数据,但当
DISTRIBUTED TRANSACTION
涉及条款。
-
我们最近将服务器升级或链接到Oracle10g,值得一提的是,我没有遇到我们使用9i的问题。