Physische Tabellen mit SQL-Typen, Constraints und Fremdschlüsseln auf Spaltenebene.
1 Beispiel: Datenbankschema
Datenbankschema für Bestellungen
Drei physische Tabellen mit SQL-Typen, Constraint-Chips und Fremdschlüsseln auf Spaltenebene.
Anders als im ER-Diagramm setzen die Fremdschlüssellinien Spalte an Spalte an und tragen die referenzielle Aktion. Das eine kaskadierende Löschen ist im Akzent, und die Tabelle, in die es kaskadiert, bekommt einen getönten Kopf.
Ein Datenbankschema beschreibt die physische Struktur einer relationalen Datenbank: Tabellen, Spalten mit SQL-Datentypen, Primärschlüssel, Fremdschlüssel und Constraints wie NOT NULL oder UNIQUE. Es entspricht dem, was ein CREATE TABLE tatsächlich anlegt.
Jede Tabelle ist ein Kasten mit ihren Spalten. Linien verbinden einen Fremdschlüssel direkt mit der Spalte, auf die er verweist, so siehst du, über welche Felder Joins laufen.
Wann ein Datenbankschema sinnvoll ist
Bei einem Code-Review einer Migration, um zu sehen, welche Fremdschlüssel und Indizes sich ändern.
Beim Onboarding von Entwicklern und Analysten, die Abfragen gegen eine Produktionsdatenbank schreiben müssen.
Nicht für das Gespräch mit dem Fachbereich: Dort ist ein ER-Diagramm ohne Datentypen verständlicher.
So erstellst du ein gutes Datenbankschema
Schreib zu jeder Spalte den echten Datentyp, etwa varchar(255) oder timestamptz.
Kennzeichne Primär- und Fremdschlüssel sichtbar, zum Beispiel mit PK und FK.
Ordne Tabellen so, dass verbundene Tabellen nebeneinanderliegen und Linien kurz bleiben.
Füge bestehendes SQL-DDL in MakeCharts ein, statt die Tabellen von Hand abzutippen.