Einzelnen Beitrag anzeigen

Benutzerbild von simmi
simmi

Registriert seit: 24. Nov 2004
Ort: Röbel/Müritz
112 Beiträge
 
Delphi XE5 Professional
 
#1

SQL Abfrage läuft nur langsam

  Alt 14. Okt 2009, 15:06
Datenbank: MySQL • Zugriff über: DBExpress
Hallo,

ich muss aus einem Delphi Programm heraus (RAD Studio 2007) auf eine MySQL Datenbank zugreifen. Ich habe die Komponenten aus dem Register DBExpress genutzt.

Die Verbindung kommt korrekt zustande. In der Tabelle befinden sich ca. 300 Datensätze.

Ich wähle in der Radiogroup1 einen Buchstaben aus, der in einer SQL Anweisung eingefügt wird. Die SQL Anweisung liefert als Ergebnissmenge alle Berufe mit diesem Anfangsbuchstaben. (max. 30 Bezeichnungen) Diese werden in der Radiogroup2 dargestellt. Es dauert jedoch sehr lange bis die Daten ausgelesen werden.

Wie kann dieser Vorgang beschleunigt werden????

Delphi-Quellcode:
procedure TForm1.RadioGroup2Click(Sender: TObject);
var bu : string;

begin
radiogroup1.Items.Clear;
bu:=radiogroup2.Items[radiogroup2.ItemIndex];

DataModule1.SQLDataSet1.CommandText:=
    'select `dta_bezeichnung` from `bts_berufe` where `dta_bezeichnung` LIKE'+chr(39)+bu+'%'+chr(39);
DataModule1.SQLDataSet1.Open;

with DataModule1 do
  begin
   while not SQLDataSet1.Eof do
    begin
    radiogroup1.Items.Add(SQLDataSet1.FieldByName('dta_bezeichnung').AsString);
    SQLDataSet1.Next;
    end;
  end;
  DataModule1.SQLDataSet1.Active:=false;
end;
Uwe
  Mit Zitat antworten Zitat