1开始事务--〉一系列更新--〉关闭页面(等于没有提交事务的过程)
-------------------------
会话一结束.会自动回滚
2。开始事务--〉一系列更新--〉设置事务为自动提交(这里会抛异常么?)--〉更新
   这种情况数据是怎么更新的呢
---------------------------------------
抛不抛异常就看你的业务了.如果中间出错了肯定出异常啊.这里你自己得作个判断.
因为你是批量.可以在存储过程中写exception .... rollback;3。开始事务--〉一系列更新--〉开始事务(这里会抛异常么?)--〉更新--〉提交事务
-----------------------------------------
是的,也会.

解决方案 »

  1.   

    liuyi8903(tony):对于第2,3种情况,我觉得和业务没有关系,换个说法,比如说如下的的事务操作允许么:开始事务1
    一批更新
    开始事务2
    一批更新
    提交事务2
    一批更新
    提交事务1
    ------------
    我有点影像,好像oracle支持这样多事务的,请专家确认一下,这样可以么
    -------------------------------------------------------------------------
    再举个例子:开始事务1
    更新A
    设置事务为自动提交(实际是开始新的事务)
    更新B
    回滚事务1
    ------------
    我觉得这个的执行结果是更新A失败,更新B执行成功,不知道这样理解可不可以
      

  2.   

    是的.我指的业务是程序的实现.比方由于各种因素.如回滚段小. 或者commit等因素所产生的01555
      

  3.   

    开始事务1
    更新A
    设置事务为自动提交(实际是开始新的事务)
    更新B
    回滚事务1
    ------------
    我觉得这个的执行结果是更新A失败,更新B执行成功,不知道这样理解可不可以
    ================================你可以设置保存点!
    如果在一个事务里面控制.当然那就不存在保存点了!