在做三层时,我有个想法:当一个客户端连接到应用服务器上时,应用服务器为该客户创建了一个独立的数据内寸空间,当客户对数据进行修改时,客户只能先修改自己内存空间中的数据,然后提交到数据库中.
    不知道这认识是否正确,请各位大侠批评斧正.不胜感激!!!!

解决方案 »

  1.   

    这个问题时多用户数据库需要解决的问题,目前普遍采用的办法就是事务更新,来帮正数据的完整性,
    delphi里面还提供了一个缓存更新。如你上面提到的例子,只有第一个人的提交才会成功,其余的会返回错误。你可以看看数据库的理论方面的书籍,会明白的。
      

  2.   

    多用户的数据自带lock的功能。
      

  3.   

    当某一用户对数据库进行了lock了,那其它用户岂不是只能干等啊~~!同志们,有什么好的解决方法吗?
      

  4.   

    当提交出错时,ClientDataSet 有 OnReconcileError 事件
    在 ClientDataSet 的 OnReconcileError 事件中处理
      

  5.   

    hiflower(花) :
       有道理.如果客户端一直提交不成功,岂不惨也.
      哎~~!数据库的冲突问题就是麻烦啊~~!