Das relationale Modell ist das Datenmodell hinter klassischen SQL-Datenbanken wie MySQL, MariaDB oder PostgreSQL. Es wurde 1970 von Edgar F. Codd bei IBM vorgestellt („A Relational Model of Data for Large Shared Data Banks“) und organisiert Daten in Relationen – mathematisch präzise ausgedrückt: Tabellen.
Die Bausteine: Relationen, Tupel, Attribute
Eine Relation (Tabelle) besitzt einen festen Namen und eine feste Menge von Attributen (Spalten). Jede Zeile heißt Tupel und darf in einer Relation nur einmal vorkommen – Duplikate sind im relationalen Modell nicht erlaubt. Die Reihenfolge von Zeilen und Spalten ist mathematisch ohne Bedeutung.
Schlüssel verbinden Tabellen
Jede Relation braucht einen Primärschlüssel, der jedes Tupel eindeutig identifiziert. Beziehungen zwischen Tabellen entstehen über Fremdschlüssel: Die Bestelltabelle referenziert den Primärschlüssel der Kundentabelle. So wird Redundanz vermieden, weil der Kundenname nicht in jeder Bestellung erneut gespeichert wird.
Relationale Algebra und Abfragen
Codd definierte auch die relationale Algebra als theoretische Basis: Operationen wie Selektion (Zeilen filtern), Projektion (Spalten auswählen) und Join (Tabellen verbinden) liegen jeder SQL-Abfrage zugrunde – siehe SQL-Grundlagen und SQL-JOINs.
Entwurf und Normalisierung
Vor der Umsetzung steht die Modellierung: Aus dem fachlichen Entity-Relationship-Modell wird das logische relationale Schema abgeleitet. Danach prüft die Normalisierung (1NF, 2NF, 3NF), ob die Tabellen sauber entworfen sind. Die konkrete Struktur einer Datenbank heißt Datenbankschema.
Verwandte Grundlagen: Datenmodell, Entity-Relationship-Modell.