Obiger Code dauert ca. 0.06s per Datensatz => bei nur 1000 Datensätzen 60s
. Das kann nicht sein. Das ist viel zu langsam. Ich schaffe es, hunderttausend Daten in unter einer SEkunde einzulesen. Schreib mal ein 'DisableControls/'EnableControls um die Schleife. Und dann vielleicht noch den Zugriff auf das Feld optimieren:
Delphi-Quellcode:
Var
field : TField;
Begin
field := UniQuery1.Fields[0];
UniQuery1.DisableControls;
try
while not UniQuery1.eof do
begin
slDB.Add(field.AsString);
UniQuery1.next;
end;
finally
UniQuery.EnableControls;
End
End;
Wie soll die Autovervollständigung denn laufen? Wie sehen die Strings in der Tabelle aus? Ist Budget vorhanden? Ich würde mir dann die DevExpress-Komponentensammlung besorgen, die haben das alles schon eingebaut.