各位,小弟最近开始使用MIDAS,所以有些概念问题不是很清晰,希望大家发表自己的意见。1.关于客户端的TClientDataSet怎么才能比较高效的重用呢,对于数据集的添加,删除,修改,查询我总是希望能够使用尽量少的控件来达到目的。2.是不是可以把TClientDataSet作为一种集TQuery,TTable,TStoreProcedure于一身的控件呢?3.在应用程序服务器端是否可以尽可能的少使用TDataSetProvider呢?但是又要考虑到多用户同时对数据库操作时的防冲突问题,这该怎么做呢?4.TClientDataSet如何做到分页显示和及时刷新?

解决方案 »

  1.   

    这些问题你都可以在书上找到答案的。
    看看李维的《delphi 5.x分布式多层应用系统篇》
      

  2.   

    我正在看《delphi 5.x分布式多层应用系统篇》不过还想从更多方面来了解,大家都可以谈谈实际操作中遇到的问题和解决的方法,大家来交流一下吧
      

  3.   

    http://www.delphibbs.com/delphibbs/dispq.asp?lid=226555
      

  4.   

    李维的《delphi 5.x分布式多层应用系统篇》
      

  5.   

    一句话:别舍不得用控件,那并不会带来过多的负担,自己写程序的话,midas的有事何在?
      

  6.   

    4问题, 设置clientdataset.recordpacket=一次从服务器上传送的记录数,
     clientdataset.fetchoncommand:=false;
     clientdataset.getnextpacket
      

  7.   

    可以动态创建,用完之后再释放,但是觉得也平凡的创建效率不太好。
    也可以先定义一堆DSP,
    然后在程序中调用,若DSP已被使则标记为“已用”,在服务器定义方法供客户端调用,该方法从DSP列表中返回一个“空闲”的DSP给客户端并设置标记为“已用”…
      

  8.   

    TClientDataSet是一个功能强大的控件,能作的事情比TTable,TQuery多多了
      

  9.   

    我的做法呢,呵呵,只在客户端有一个ClientDataSet ,Server有一个RDM.
    然后定义一系列ID,在客户端需要处理时,将ID及实际的input 数据封装为一个OleVariant,通过DataRequest传到 RDM.
    RDM再分析ID。取出相应的数据,进行处理。