1、如何把字符串当成类名使用? 2、用ADO空遍历一个3000行的表,为什么要3秒多?(100分)

  • 主题发起人 主题发起人 expect
  • 开始时间 开始时间
E

expect

Unregistered / Unconfirmed
GUEST, unregistred user!
1、我要这样:
String str;
xx:=str.Create;

2、
ADOQuery1.Open;
while not ADOQuery1.eof begin

ADOQuery1.next;

end;
ADOQuery1.Close;


 
第一个问题已经讨论过了,好像是没法实现!
第二个问题:可能和你的机器的配置有关,应该不会有其它什么原因吧!
 
你用了DBGrid了吗?如用了就这样:
ADOQuery1.Disablecontrols;
try
with ADOQuery1 do
begin
open;
while not eof do
begin
......
next;
end;
Close;
end;
finally
ADOQuery1.Enablecontrols;
end;
 
第一个可以实现的。

TComponentClass=Class of TComponent;

var
TC:TComponentClass;
V :TComponent;
begin
TC=TComponentClass(FindClass(yourClassName));
if TC<>nil then
V:=TC.Create(AOwner);
end;

第二个问题,只要你用了数据感应件(也许TDataSource也一样),或写了DataSet的象BeforeScroll/AfterScroll
那么在遍历前先DisabledControls,并将BeforeScroll,AfterScroll设为NIL,完成后再enabledcontrols,将beforescroll/afterscroll设回去
 
接受答案了.
 
后退
顶部