DTC的事务处理根本控制不了ORACLE
 -------------------------------
  
 我觉得这是因为Oracle的 DML操作本身就包了一层事务。

解决方案 »

  1.   

    oracle有自己的事务处理。
    但是我想还是因为你的程序有问题。
      

  2.   

    同意jiezhi(風依舊)  的看法
      

  3.   

    TO: jiezhi(風依舊) 
    ORACLE是有自己的事务处理,但如果用它的事务处理,那么程序会很复杂,因为凡是涉及到事务处理的组件,都必须共享一个ORACLE的数据联接.而如果使用DTC的话,就会变得很简单.真的没有办法了吗?
      

  4.   

    一种方法:不利用COM+的事务处理,将其设为支持事务,事务控制在程序中实现。此方法我用过,没问题。
    二种方法:请仔细阅读Oracle的文档,我记得有专门说Oracle利用COM+事务的内容。
      

  5.   

    COM支持事务,是需要事务。由于用VB写的,所以不能池化,是所有的事务都不回滚。另外,我看到了一份ORACLE中的文档,说,在ORASESSION.OPENDATABASE中的最后一个选项要设置为:ORADB_ENLIST_IN_MTS的常量设置为&h10&,但我设置了,回答的错误是不能连接ORACLE,不能错在哪里。谢谢诸位大侠,还请多多指教!
      

  6.   

    用的是ADO连接吗?
    如果是,最好用MS的驱动,否则别用COM+。
    COM+中用ORACLE的ADO驱动问题多多。
      

  7.   

    你的数据库连接用的是什么?
    是不是默认为自动提交的?如果是的话,如果能改为非自动提交的,就改之,如果不能修改为非自动提交的话,你就要用数据库的事务去处理。当然改为非自动提交后,事务处理完成之后还是要显示的提交commit或者rollback
      

  8.   

    TO:: NoHouse(无房)
    用MS ADO来连接ORACLE所做成的组件,在发布中,如果选对需要事务的话,那么就会由于DTC与ORACLE的不兼容而出错。TO:: xzou(亡狼补齿) 如何在设置数据库连接中使用自动提交与非自动提交?