首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

delphi顶用ADOquery查询

2013-08-29 
delphi中用ADOquery查询我用delphi做了一个查询系统,是用ADOquery访问数据库的,现在数据库的数据量越来越

delphi中用ADOquery查询
我用delphi做了一个查询系统,是用ADOquery访问数据库的,现在数据库的数据量越来越大,查询速度也越来越慢,查询结果是显示在dbgrid中的,一般查询结果不是直接显示在dbgrid中吗,现在查询结果在dbgrid中显示的过程很慢,看到滚动条慢慢下拉最后才显示完,这种情况我要怎么处理能提高这个查询速度啊? Delphi 数据库 ADOquery
[解决办法]
你首先要知道是查询数据慢还是DBGIRD显示数据慢。
查询数据慢的话用索引什么的解决
显示数据不般不会很慢除非你显示十几万几十万的数据。
这样的话,用分页
[解决办法]

引用:
你首先要知道是查询数据慢还是DBGIRD显示数据慢。
查询数据慢的话用索引什么的解决
显示数据不般不会很慢除非你显示十几万几十万的数据。
这样的话,用分页

十几万条数据查询起来应该不慢的,估计是显示在dbgird里面的速度慢了。
[解决办法]
引用:
Quote: 引用:

考虑用一下其他的grid控件,rzdggrid,cxgrid试试看。
我这个查询结果也就两千多条,怎么会这么慢呢?没理由啊


你应该是在查询后又对每笔记录循环吧,循环的时候按下面的处理试下:

加上DisableControls和EnableControls

procedure TfmMain.Button1Click(Sender: TObject);
begin
  ADOQuery1.DisableControls;
  try
    First;
    while not Eof do
    begin

      Next;
    end;
  finally
    ADOQuery1.EnableControls;
  end;
end;

热点排行