ADOQUERY快速定位(100分)

  • 主题发起人 主题发起人 LUJIAYU110
  • 开始时间 开始时间
L

LUJIAYU110

Unregistered / Unconfirmed
GUEST, unregistred user!
我用Adoquery控件连接ACCESS数据库,需要读出其中满足条件和一条,我用
adoquery.close;
adoquery.sql.clear;
adoquery.sql.add('select * 表 with BH=指定值');
adoquery.open
然后从中读出值,符合条件的只有一条。
但问题是我有很多条指定编号的记录,在程序中反复读,我觉得速度太慢,问有没有快的方法。请指点。
 
你可这样呀,在最开始的时候
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add ('select * From 表')
adoquery1.open;

以后你要找了,就用location去定位就好了呀

adoquery1.locate('值','字段',参数);
 
prolove的 方法可以...................
 
我试了一下,比原先快点,但速度仍不满意,我原理是在第一次读表时,把BH存在LIST:TSTRINGLIST中,最后用时再一个个查BH记录,读出需要字段,其中有图表字段,这种情况有无好的解决办法?能不能在第一次读BH时,顺便把需要字段读出来,但暂放到那呢?
原先只所以慢,因为是非顺序的,记录也多,用LOCATE查,时间我没测试,但放一个进度条,清晰的看它走动。
 
后退
顶部