如何提高ADOTABLE访问速度?

XIENING009 2007-11-01 09:25:01
用的是D7,MSSQL访问的数据量比较大,如何提高速度啊,高手们指点指点
...全文
150 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
XIENING009 2007-11-02
  • 打赏
  • 举报
回复
ADOTable1FetchProgress中的代码要怎么更新进度条呢?
XIENING009 2007-11-02
  • 打赏
  • 举报
回复
能不能用多线程提高速度呢?或者索引?
XIENING009 2007-11-02
  • 打赏
  • 举报
回复
有用FILTER,考虑只显示最近3天的数据,再提供查询功能,这样至少打开界面的速度会高点
wangxuelid 2007-11-02
  • 打赏
  • 举报
回复
,,,,,,,,,,
UndefinedCoder 2007-11-02
  • 打赏
  • 举报
回复
procedure TForm1.ADOTable1FetchProgress(DataSet: TCustomADODataSet;
Progress, MaxProgress: Integer; var EventStatus: TEventStatus);
begin
//在这里添加代码更新进度条
end;

Progress和MaxProgress这么明显的都看不到,我不服你都不行。
看来LZ是需要“待喂饭”型或“求代码”型的。严重BS一下。
鐵蛋 2007-11-01
  • 打赏
  • 举报
回复
首先你得把你的数据集控件写在一个数据模块里,然后把他编译成包的形式,这样每个单据打开时就可以花很少的时间连接数据库
oushengfen 2007-11-01
  • 打赏
  • 举报
回复
是不是所有的数据都有用。如果没有用,则可以使用过滤功能,试一下。
XIENING009 2007-11-01
  • 打赏
  • 举报
回复
就是不好改控件啊,有没有办法通过设置或者别的方法解决呢?
纯冰糖 2007-11-01
  • 打赏
  • 举报
回复
使用ADOQuery,可以灵活运用SQL查询语句
UndefinedCoder 2007-11-01
  • 打赏
  • 举报
回复

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB;

type
TForm1 = class(TForm)
ADOTable1: TADOTable;
procedure ADOTable1FetchProgress(DataSet: TCustomADODataSet; Progress,
MaxProgress: Integer; var EventStatus: TEventStatus);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.ADOTable1FetchProgress(DataSet: TCustomADODataSet;
Progress, MaxProgress: Integer; var EventStatus: TEventStatus);
begin
//在这里添加代码更新进度条
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
{以下代码让ADO执行异步操作,即不论取数据时间多么长,都不会阻塞主线程,不会导致用户界面无响应}
ADOTable1.ExecuteOptions:=[eoAsyncFetchNonBlocking];
end;

end.
XIENING009 2007-11-01
  • 打赏
  • 举报
回复
怎么写在一个数据模块打包呀?如果要在查询过程中显示一个进度条好处理吗?

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧