try
        try
          BeginTrans;
           …
           …
        Finally
          CommitTrans;
   Except
       RollbackTrans;事物回滚不能立即体现出来,要重新启动程序后才发现回滚了
而且如果把CommitTrans放到finally中会报错:没有活动的事物
还是不需要finally?
请各位帮帮忙

解决方案 »

  1.   

    最终都会执行finally,出错时会先执行RollbackTrans,再执行finally的CommitTrans肯定会报错
      

  2.   

    意思是不需要finally 把RollbackTrans放到对数据库操作代码的最后?
      

  3.   

    是要try except 就行了,CommitTrans;就顺序的防盗try下的代码最后就可以了
      

  4.   

      try
        .... 
        CommitTrans;
      Except
        RollbackTrans;
      End;
     这样就可以了