Ich möchte bei Auswählen des Hersteller in der 2. DBLookupcombobox die Modelle angezeigt bekommen.
Delphi-Quellcode:
procedure TForm1.DBLookupComboBox2CloseUp(Sender: TObject);
begin
MyQuery4.SQL.Text := 'SELECT * FROM fahrzeug_modelle WHERE marken_id = 140';
end;
I
Du musst natürlich das
Query auch auch active setzen
Delphi-Quellcode:
procedure TForm1.DBLookupComboBox2CloseUp(Sender: TObject);
begin
MyQuery4.SQL.Text := 'SELECT * FROM fahrzeug_modelle WHERE marken_id = 140';
MyQuery4.active := True;
end;
OOOOHHHHH MAAANNNNNN
.... das warst die ganze zeit .... Vielen dank für deine hilfe
Besser ist es, wenn du im
Query mit Parametern arbeitest. Also in etwas so:
Delphi-Quellcode:
procedure TForm1.DBLookupComboBox2CloseUp(Sender: TObject);
begin
MyQuery4.SQL.Text := 'SELECT * FROM fahrzeug_modelle WHERE marken_id = :markenID';
MyQuery4.Parameters.parseSQL(MyQuery4.SQL.Text, True);
MyQuery4.Parameters.ParamValues['markenID']:=Marken_ID; //<- Anstelle von Marken_ID musst du
// narürlich eine Variable nehmen, in
// die ID deines ausgewählten Herstellers
// seht.
MyQuery4.active := True;
end;
Wenn du mit umfangreicheren Abfragen arbeitest, dann macht das durch aus Sinn.
Noch wesentlich komfortabler (und meiner Meinung nach übersichtlicher) wird das, wenn du dir dafür eine Klasse erzeugst, die das für dich macht.
Dann muss ich mich mit diesem Thema noch mehr beschäftigen ... vielen dank für eure hilfe