分布式事务错误? [英] Distributed transaction error?

查看:63
本文介绍了分布式事务错误?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在存储过程中,我使用以下语句.但是当我运行存储过程时它抛出分布式事务错误.

In stored procedure I am using below statements. But it throwing Distributed transaction error when I ran Stored Proc.

Declare @res int
    Declare @mes as varchar(100)

    DECLARE  @Result TABLE (
result INT,
mesage VARCHAR(100))

    Insert @Result (result, mesage)         
            Exec [MySpeNet].[dbo].[GetMemberShipStatus]'3319994'
    select @res = result, @mes = mesage from @Result

异常:

      Msg 7391, Level 16, State 2, Procedure GetMemberShipStatus, Line 19
    The operation could not be performed because OLE DB provider "OraOLEDB.Oracle" 
for linked server "ASPQA" was unable to begin a distributed transaction.

有没有其他方法可以在不创建临时表的情况下存储结果和消息?

Is there any other way that I can store result and mesage without creating Temp table?

推荐答案

启用选项

  • 允许远程客户端
  • 允许出站

在组件服务中本地 DTC 属性的安全选项卡上.

On Security tab of Local DTC Properties in Component Services.

  • 转到运行,输入 comexp.msc.
  • 双击控制台根目录".
  • 双击组件服务".
  • 双击计算机".
  • 双击我的电脑".
  • 双击分布式事务协调器".
  • 右键单击分布式事务协调器"下的本地 DTC",然后单击属性.
  • 点击安全"标签.
  • 在允许远程客户端"和允许出站"复选框上打勾.

这篇关于分布式事务错误?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆