1.ClientDataSet使用ApplyUpdates方法时候,有哪些参数,例如ClientDataSet.ApplyUpdates(0),ClientDataSet.ApplyUpdates(1),ClientDataSet.ApplyUpdates(2)....
2.更新数据,返回结果有哪些,那些表示成功,哪些表示失败,没有更新到数据库里?
请教各位!

解决方案 »

  1.   

    ApplyUpdates只需要传递一个参数叫MaxErrors,用于指定一个整数,当遇到无法更新的记录超过这个数时,此次更新就中止。如果 MaxErrors参数设为0,表示只要遇到一个错误更新就中止,客户端的日志保持不变。如果MaxErrors参数设为-1,当应用服务器发现有错误的 记录,就尝试更新下一个记录,等所有的记录都尝试过以后才返回。
    ApplyUpdates会自动调用Reconcile函数,进而调用应用服 务器上的TProvider构件的ApplyUpdates函数去更新远程的数据库服务器。没有被DBMS服务器认可的记录通过Reconcile返回给 客户端,此时将在客户端触发OnReconcileError事件让您更正错误。最后,ApplyUpdates函数返回仍然没有被认可的记录数。