如何才能比Next更快的访问RecordSet的记录?此问题已经解决,与各位FW共享一下心得! (300分)

  • 主题发起人 主题发起人 doxpix
  • 开始时间 开始时间
是不是声明一个_RECORDSET,然后将所有DATASET的数据转到_RECORDSET,在_recordset里操作!
如果是这样,哪里有读里面的数据,不能写了!
 
呀, 来晚了,对这个 Next 我也有一把体会的.

不要用 ado 的Next 要做循环.用 recordSet.moveNext 速度将快上很多倍.
在写程序时 前面都一样得到数据集.
ADODataSet.RecordSet.MoveNext 来做
其他的都一样. 我们做过测试 速度快上 20 倍呀.
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=507501

这里用一个向反方向的讨论和测试.呵呵,那个xlwang 就是以前的我了..
我两个方向的都做了详细的测试, 也得到了结果. 大家可以参考参考.
 
但这种方法只适用于ADO接口,如果非ADO接口怎么办?
 
用内存数据库就行啊
 
这个http://www.experts-exchange.com/网站我也常去,里面的技术提问与回答水平都很高
我在编程时遇到一些问题,往往能在那找到答案(看提问和回答)。
 
内存数据表是不行的,其原理tadodataset大致相同,速度没有明显改善.

ExEx现在好像全部开放了,以前看问题的回复是需要分数的!
 
楼主是怎么解决的? 那是利用那个RecordSet 吗?
 
Puma Wang:
我原本是想用直接内存访问的,但一直没有找到实现方法.
用原生对象_Recordset,field基本上达到了我的要求(6万条记录大约1秒钟,
用adodataset.next大约需要4秒钟).
 
哦. 都是一样呀.
那个内存表的方法 .有空我也去研究研究.
 
多人接受答案了。
 
后退
顶部