本帖最后由 luojianfeng 于 2014-12-06 12:04:03 编辑

解决方案 »

  1.   

    先后调用SpeedButton5和SpeedButton10事件,5的事物回滚了,10的不会,因为你10的代码里有Connection.BeginTrans;开始事物 Connection.BeginTrans;
    结束事物 Connection.CommitTrans   /   Connection.RollbackTrans
    开始事物与结束事物是嵌套的。
      

  2.   

    //ADO事务处理ADOConnection1.BeginTrans;
    Try
      .....//  ADOo数据处理代码
      ADOConnection1.CommiTrans;
    Exception
      ADOConnection1.RollbackTrans;
    End;
      事务处理是否回滚,取决于
    Try
      .....//  ADO数据处理代码
      ADOConnection1.CommiTrans;
    Exception
    之间的ADO数据处理代码中否成功,只要一条代码出现错误,就会出现回滚。当数据处理成功就不会出现回滚。
      

  3.   

    你的SpeedButton5和SpeedButton10事件中的处理回滚的代码是相同的,主要是“ ADO数据处理代码”不同,造成是否回滚。