hallo,
etwas spärliche Informationen, aber gut. Nehmen wir an, die Tabelle heisst TEST, das DBGrid ist mit der Query q1 (über ein DataSource) verbunden. Die ComboBox heisst cb1.
In das OnChange-Ereignis von der ComboBox schreibst du:
Delphi-Quelltext
1: 2: 3: 4:
| if q1.Active then q1.Close; q1.SQL.Text := 'Select * from TEST where TYP=:p1'; q1.ParamByName('p1').AsString := cb1.Items[cb1.ItemIndex]; q1.Open; |
Du solltest dir allerdings in q1 das Update, Insert und Delete-SQL mit dem SQL-Generator erstellen lassen und zwar indem du zuerst das Statement "Select * from TEST" in die Query schreibst und dann auf GenerateSQL klickst (ich hoffe du weisst wie das geht, sonst nachfragen

).
Viele Grüsse.
P.S.: Wie du alle verfügbaren Typen in die ComboBox kriegst (neue Query q2):
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| if q2.Active then q2.Close; q2.SQL.Text := 'Select distinct(TYP) from TEST'; q2.Open; cb1.Clear; While not q2.Eof do begin cb1.Items.Add(q2.Fields[0].AsString); q2.Next; end; q2.Close; |
Wenn du allerdings eine größere Tabelle hast, dann würde ich eher eine zusätzliche Tabelle anlegen, in der alle Typen aufgelistet sind (und zwar jeder nur einmal). Sag mal: Welche Datenbank nutzt du ???