想请教各位怎样实现代码的事务处理
我要实现的功能是有两段代码想跟数据库一样
要么都执行要么都不执行
这两段代码一个是操作本地数据库
另一段代码是操作远程数据库请各位帮忙想想办法!

解决方案 »

  1.   

    既然你这二句代码都是操作数据的,所以好办一些。你可以这样//打开数据库1的事务
    //打开数据库2的事务
    Try
      //你要执行的操作
    Except
      //回滚数据库1
      //回滚数据库2
    End;
      

  2.   

    补充下哈:呵呵
    //打开数据库1的事务
    //打开数据库2的事务
    Try
      //你要执行的操作
     //提交数据库1
     //提交数据库2
    Except
      //回滚数据库1
      //回滚数据库2
    End;
      

  3.   

    try
        ADOConnection1.BeginTrans;    ...    ADOConnection1.CommitTrans;
      except
        if ADOConnection1.InTransaction then
          ADOConnection1.RollbackTrans;
      end;
      

  4.   

    to: WuLoveXue(晕死,又这样) 
    他要执行的操作当然包括提交数据库事务
      

  5.   

    大型数据库管理系统都有数据库事务的概念,并不是Delphi特有的东西。一连窜的事情的在一起形成一个事务,如果[事件一]执行成功,[事件二]没有执行成功,表明整个事务没有成功,那么[事件一]的数据也不能被存贮到数据库中,这时可以用RollBackTrans进行数据回滚。当你用Delphi开始一个事务的时候,数据库中插入、删除和存贮都是在数据库的缓存中进行(你可以这么认为),当你认为所有的事都被执行成功后,就可以CommitTrans,这时所有的数据才真正的存贮到数据库中。
    补一下:ADO控件中的事务只是对一般数据库的事务的一个封装,本质还是对后台数据库进行事务操作。数据库事务中一般都有多条对数据库操作的命令,事务就是保证它们一起执行,或一起终止。
    就像你到银行转帐,1。你的帐户扣钱。2。对方帐户存钱。这两个命令必须一起操作,要么一齐成功,要么一齐失败。
    如果没有事务,刚执行完第一条,拉登把电缆挖了。哈哈,你就亏了
      

  6.   

    to: hmzgz81(哩翱) 
    你好像是所答非所问啊。 楼主呢?
      

  7.   

    to: zyyjc() 我说的方法肯定可以,你还想什么样的解决方式? 再说说要求吧
      

  8.   

    ACCESS数据库+DELPHI 5的代码可以进行事务处理吗