一个存储过程A 里面调用存储过程B,B存储过程中有commit;
 问:怎么实现A过程的语句不被自动提交?

解决方案 »

  1.   

    CREATE OR REPLACE PROCEDURE a
    is
    begin
        begin
           b(...);
        end;
    conmit;
    end a;
      

  2.   

    b过程使用自治事务 create or replace procedure b
    is 
       pragma autonomous_transaction ;
    begin
     ...
     commit;
    end b;
      

  3.   

    可以用自治事务来支持嵌套查询
    ==================================================================
    Inthirties关注Oracle数据库 维护 优化,安全,备份,恢复,迁移,故障处理如果你需要帮助或想和我一起学习的请联系
    联系方式QQ:370140387
    QQ群:  85837884(注明:数据库)
    电子邮件:[email protected]
    网站: http://www.inthirties.com
      

  4.   

    可以用自治事务来支持嵌套事务
    ==================================================================
    Inthirties关注Oracle数据库 维护 优化,安全,备份,恢复,迁移,故障处理如果你需要帮助或想和我一起学习的请联系
    联系方式QQ:370140387
    QQ群:  85837884(注明:数据库)
    电子邮件:[email protected]
    网站: http://www.inthirties.com
      

  5.   

    可以用自治事务来支持嵌套事务
    ==================================================================
    Inthirties关注Oracle数据库 维护 优化,安全,备份,恢复,迁移,故障处理如果你需要帮助或想和我一起学习的请联系
    联系方式QQ:370140387
    QQ群:  85837884(注明:数据库)
    电子邮件:[email protected]
    网站: http://www.inthirties.com
      

  6.   

    CREATE OR REPLACE PROCEDURE a 
    is 
    begin 
        begin 
          b(...); 
        end; 
    conmit; 
    end a; 
    这个不好用,我测了,