为何数据库入库越来越慢?
delphi7+access2000进行入库操作,如下:
procedure TForm1.Button1Click(Sender: TObject);
var
ff : textfile;
i, j :Integer;
str :String;
tList, ZHANList: TStringlist;
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From hnR ');
ADOQuery1.open;
i:=0;
Assignfile(ff,'d:\123.txt'); //大概有2万条行,每行100个数据
reset(ff);
readln(ff,Str);
ZHANList := SplitString(Str,' ');
WHILE (NOT EOF(ff)) DO BEGIN
readln(ff,Str);
inc(i);
tList := SplitString(Str,' ');
for j:=1 to tList.Count-1 do begin
ADOQuery1.Append;
ADOQuery1.fields[0].AsString := ZHANList.Strings[j];
ADOQuery1.fields[1].AsString := tList.Strings[0];
ADOQuery1.fields[2].AsString := tList.Strings[j];
end;
ADOQuery1.Post;
tList.Free;
END; //
CloseFile(ff);
ZHANList.Free;
end;
入库大约到1000行时速度明显开始变慢,怀疑文件大,造成速度慢;于是把123.TXT文件人工分割成5个文件,再分别入库,第一个文件入库,速度刚开始很快,后来变慢,但当第二个文件入库时,速度一开始就很慢。请问个位高人,这是怎么了???