Delphi-Quellcode:
procedure TForm2.Button2Click(Sender: TObject);
var x:string;
begin
adoquery1.connection:=adoconnection1;
adotable2.recno:=listbox1.itemindex+1;
// adoquery1.connection:=adoconnection1; -- doppelt kann entfallen.
adoquery1.close;
// adoquery1.active:=false; -- mit Close bereits geschlossen, kann entfallen
adoquery1.sql.clear;
adoquery1.SQL.add('SELECT a.Name, a.Vorname FROM Arbeitnehmer as a, Berufsgruppen as b Where a.bgident="'+adotable2.fieldvalues['BGIdent']+'";');
adoquery1.open ;
// adoquery1.active:=true; -- mit Open bereits geöffnet, kann entfallen
SQL-Code:
SELECT a.Name, a.Vorname
FROM
Arbeitnehmer as a,
Berufsgruppen as b
Where a.bgident="BGIdent"
In der Where-Bedingung fehlt eine Verbindung zwischen Arbeitnehmer und Berufsgruppen.
SQL-Code:
SELECT a.Name, a.Vorname
FROM
Arbeitnehmer as a,
Berufsgruppen as b
Where a.SpalteDieAuchInBVorkommt = b.SpalteDieAuchInAVorkommt
and a.bgident="BGIdent"
Gibt es in der Tabelle Arbeitnehmer mit Sicherheit den Wert, der in adotable2.fieldvalues['BGIdent'] ausgewählt wurde?