Gute Datenbanken teilen Daten auf mehrere Tabellen auf (Normalisierung), statt Informationen zu wiederholen. Ein Fremdschlüssel verweist auf den Primärschlüssel einer anderen Tabelle und sichert so die Konsistenz (referenzielle Integrität). Typische Beziehungen: 1:n (ein Nutzer, viele Bestellungen) und n:m (über eine Zwischentabelle).
CREATE TABLE bestellung (
id INTEGER PRIMARY KEY,
nutzer_id INTEGER NOT NULL REFERENCES nutzer(id),
betrag NUMERIC(10,2) NOT NULL,
datum DATE
);
INSERT INTO bestellung (nutzer_id, betrag, datum) VALUES (1, 19.90, '2026-03-01');Merke
Fremdschlüssel verweisen auf einen Primärschlüssel
Normalisierung vermeidet doppelte Daten
n:m-Beziehungen brauchen eine Zwischentabelle
Aufgabe
Lege eine Tabelle `autoren` an und verknüpfe `buecher` per Fremdschlüssel.