在存储着大数据量(几万条)下,ClientDataset的Locate等查询方法效率如何啊,会不会比较慢呢,它的查询机制是什么啊,高手指点

解决方案 »

  1.   

    我想还是不要用locate了吧.你为什么不用动态参数呢?
    select * from where youparam = :paramsvariant;
    然后赋值即可.效率好,又节省带宽.
      

  2.   

    可以设置packedRecords的数据,这样可以达到速度的效果
      

  3.   

    在使用locate方法时,程序首先将要查询的表中的所有数据下载在客户端,然后再在客户端的数据中来查询,所以在数据量很大时,坚决反对使用该方法及lookup方法,建议使用commandtext属性
      

  4.   

    当然会,数据量大了,最好的算法也只能作到减少时间,而不能作Quick manoeuvre!!
      

  5.   

    这样的设计
    错了
    几万条数据都到客户端,再locate,filter
    应该用sql语句,减少到客户端的数据量
    不然的话,
    不知道怎么死