数据库的问题,小弟我实在是太菜,还请高手指点!!!谢先(100分)

  • 主题发起人 主题发起人 pp虫
  • 开始时间 开始时间
P

pp虫

Unregistered / Unconfirmed
GUEST, unregistred user!
用ADOTable控件加载一个记录数很多的表时,会用去很长时间。
请问有没有办法显示加载的进度呀?
 
1.指定条件, 在SQL语句中用where条件.
2.ADO有一maxrecords属性。设为0则把所有记录取出,可以设为50、100等具体数据。
3.将CacheSize设置成100到1000为最快速度,并将Prepare设置成True.
4.将cursurtype属性为ctOpenForwardOnlyy可以提高效率



 
将ADOTable设为异步执行也很快!ExecuteOptions:= [eoAsyncFetchNonBlocking]
 
你是不是想用一个进度条来显示数据传输进度?
 
加一个进度条控件ProgressBar1,你计算一下大概用多长时间,
加载完数据后让progressbar1.position:=100;就OK了!
 
可在FetchProgress事件中取的已取的记录数,总记录数!
 
FetchProgress好象不行吧,能不能给个例子
 
多人接受答案了。
 
用TGauge控件也可以,用TProgressBar也行!
如果是用TGauge控件赋初值:
Message_F.Gauge1.MaxValue :=iBackCount*6;//要添加的最大记录数
Message_F.Gauge1.Progress :=0;//将此属性赋,从开始显示进度
每添加一条记录时把它的progress属性加1!
TProgressBar控件也是差不多这样了!
 
哎呀,亏了,PP虫怎么就结束了!
 
后退
顶部