发觉以前的老一辈的人喜欢用CLIENTDATASET
但我只会用ADOQUERY和ADOTABLE
不知道我做多层的时候用这两个能不能代替CLIENTDATASET因为是一个队伍的
所以我也可能要学习使用CLIENTDATASET了

解决方案 »

  1.   

    多层时,应该比较困难吧
    CLIENTDATASET一般用于这个情况
      

  2.   

    我现在都不想再花时间学CLIENTDATASET了
      

  3.   

    呵呵,等你初步了解了什么是多层应用,就明白它们的基本架构与典型用途根本是不相同的。或者说,Delphi提供的ADO组件与BDE组件是姊妹篇,而ClientDataSet与它们没有什么直接联系。
      

  4.   

    ClientDataSet用起来还是不错的,可能我属于老年人了,呵呵。我还真不知道,你在Delphi的三层体系中客户端怎么用ADO组件的,我还真不知道,在服务器端和客户端之间维护两个代理有什么好处,看来真需要有人来好好给我上一课了。据我所知,和我的分析,传递ADO组件的接口,无非就是生成了两个代理,而且还没有客户端的缓存,还造成服务器端的ADO组件的有状态,问题多多,如果要共享服务器组件,要做的活还真不少。ClientDataSet可以保持客户端的缓存,无需反复的获得服务器的数据,当然这也是有代价的,一次传输的量比较大,而且,如果客户端老是需要刷新,而且错误调和不太好做的情况下,效率有降低的。ClientDataSet可以方便的做到状态无关,或者,方便的维护状态,所需的代码很少。而且ClientDataSet还是一个不错的内存数据表,就算不用在三层结构中,作为一个内存数据表也是很不错的,效率并不低,我比较奇怪的,就是老是有人找内存表的第三方组件,正是身在宝山不知宝啊!ClientDataSet可以方便的存放修改的数据,这对于不是经常和服务器连线的应用来说也是福音,虽然用处不大,而且真的实施的时候,麻烦还不少。
      

  5.   

    TClientDataSet是个很妙的东西,同ADODATASET什么完全不是一回事,别扯到一堆。
      

  6.   

    没有ClientDataset,3层我还不知道如何实现,看来我要学习学习了