请问以下命令的区别在哪,
post,cancel
applyupdates,cancelupdates,
commitupdates,
commit,rollback
committrans,
在执行以上语句时的先后顺序又是怎么样的,
烦劳给解释一下,本人太菜老搞不懂,

解决方案 »

  1.   

    提交、取消修改post,cancel命令,这时候并不一定就真正的修改了数据库中的数据,特别是在多层中,需要执行applyupdates,cancelupdates,才进行真正的数据库相关纪录的修改和取消修改,在多层中,post之后,还可以使用cancelupdates取消没applyupdates的修改。
      

  2.   

    是不是与CACHEDUPDATE有关,,在哪种情况下用哪一种语句
      

  3.   

    post是保存当前记录。cancel是取消对当前记录的修改。
    applyupdates,cancelupdates,commitupdates都是在cachedupdates为true的情况下使用的。
    applyupdates是将缓存中的数据保存到数据库,cancelupdates是取消缓存中保存的修改数据,
    commitupdates是清空缓存中的数据。
    commit,rollback是在事物控制中用的。commit是提交事物,rollback是取消事物,回卷数据.
    committrans作用应该和commit一样,不过committrans是给adoconnection用的不对之处,望指正
      

  4.   

    在PB中有这样的函数可以知道有多少记录已经修改了,DELETEDCOUNT,MODIFIEDCOUNT,那么在DELPHI中是否也有,是不是只有MODIFEIED可以用