MySQL Abfrage über 2 Tabellen

  • Themenstarter Themenstarter DelphiDB_Studiosus
  • Beginndatum Beginndatum
D

DelphiDB_Studiosus

Hallo an alle,
ich möchte mit Delphi und MySql 2 Tabellen verknüpfen.
Komponenten: TZMySQLQuery, TDataSource, TDBGrid

Tabelle 1: Musik_CD
CD_ID, ALBUMNAME, GENRE usw.

Tabelle 2: TITEL
POS_ID, CD_ID, POS, TITEL, DAUER usw..

Die Daten sollen über CD_ID verknüpft werden. Im Projekt selber habe ich 2 x TDBGRID um die Daten anzuzeigen. Wie kann ich erreichen das im Grid für die Titel nur die Titel erscheinen die auf der Musik_CD sind?

Ich habe bestimmt schon alle möglichen SQL-Strings eingegeben, doch ich erhalte nur falsche Ergebnisse. Mal alle, mal alle doppelt. Außerdem müßte ja die Titel-Grid wenn man eine CD weitergeht aktualisiert werden.

Vielen Dank vorab schon mal für Hilfe
 
Versuch mal diesen mySql Query. Die zurückgegeben Daten geben dir alle felde aus beiden Tabellen, sowohl Musik_CD als auch TITEL.

SELECT * FROM Musik_CD INNER JOIN TITEL ON CD_ID WHERE Musik_CD.CD_ID = TITEL.CD_ID;

Wenn in den 2 Tabellen felder sind, die gleich heissen, solltest du den mySql Query abändern und den Feldern feste namen geben:

SELECT Musik_CD.Albumname AS albnam, Musik_CD.GENRE AS genre, TITEL.Dauer AS dauer........ FROM Musik_CD INNER JOIN TITEL ON CD_ID WHERE Musik_CD.CD_ID = TITEL.CD_ID;

Hoffe das hilft dir !

Gruß, der MaD
 
Zurück