Beziehungen und Verbundmöglichkeiten zwischen Tabellen
Die Beziehungen in unserer Datenbank werden in der Darstellung noch einmal deutlich. Zu den Primärschlüsseln gehören unter Anderem abteilung_ID oder auch titel_ID der Tabellen tbl_abteilung und tbl_titel.
Die Tabelle tbl_mitarbeiter enthält Verweise auf Attribute (als Fremdschlüssel) mit gleichen/ähnlichen Namen (abteilung_ID und position).
Die 1:n-Beziehungen sind auch durch die Verbindungslinien sichtbar. Zu jeder Abteilung und zu jeder Anredeform können beliebig viele Mitarbeiter zugeordnet sein. Durch eine (Verbund-)Abfrage können wir gleichzeitig Attribute aus mehreren in Beziehung stehenden Tabellen anzeigen lassen.
Dazu nun einige Beispiele
[18]SELECT name, abteilungsname
FROM tbl_abteilung, tbl_mitarbeiter
WHERE tbl_abteilung.abteilung_ID = tbl_mitarbeiter.abteilung_ID
[18]SELECT name, abteilungsname
FROM tbl_abteilung
INNER JOIN tbl_mitarbeiter
ON tbl_abteilung.abteilung_ID = tbl_mitarbeiter.abteilung_ID
[17]SELECT name, abteilungsname, beschreibung
FROM tbl_abteilung, tbl_mitarbeiter, tbl_position
WHERE tbl_abteilung.abteilung_ID = tbl_mitarbeiter.abteilung_ID
AND tbl_position.position_ID = tbl_mitarbeiter.position
[17]SELECT name, abteilungsname, beschreibung
FROM tbl_abteilung
INNER JOIN
(
tbl_mitarbeiter INNER JOIN tbl_position
ON tbl_position.position_ID = tbl_mitarbeiter.position
)
ON tbl_abteilung.abteilung_ID = tbl_mitarbeiter.abteilung_ID