Ich hab mir einfach mal eine Datenbank zusammengebastelt weil es noch eine am einfachsten für mich realisierbare Variante wäre.
Speicherbedarf hab ich sogut wie garkein...Jedoch brauch ich für 500000 Zeile (7 mb) immernoch 2:30min :/ (Das liegt vielleicht daran weil ich für jede Zeile das
Query ausführe, vielleicht kann man das noch optimieren.
Delphi-Quellcode:
StartTime:=Time;
for i:=1 to Form1.StringGrid1.RowCount do
begin
Path:=Form1.StringGrid1.Cells[1,i];
if FileExists(Path) then
begin
AssignFile(F,Path);
Reset(F);
while not eof(F) do
begin
Readln(F,tmp);
IBQuery1.Close;
IBQuery1.SQL.Clear;
IBQuery1.SQL.Add('INSERT INTO LINES(MYFIELD) VALUES('''+tmp+''');');
IBQuery1.Open;
end;
CloseFile(F);
end;
end;
EndTime:=Time;
ShowMessage('Time: '+TimeToStr(EndTime-StartTime));