1. Das Geheimnis strukturierter Daten

Jedes Mal, wenn du dich bei Instagram einloggst, einen Song auf Spotify suchst oder wir in der Schule eure Noten eintragen, arbeitet im Hintergrund eine Datenbank. Doch was ist das genau und warum reicht dafür nicht einfach ein großes Excel-Dokument?

Begriffs-Check: DB vs. DBMS

Oft sagen wir einfach "Datenbank", meinen aber eigentlich zwei verschiedene Dinge:

Die Gefahr der flachen Tabellen

Wenn wir Daten einfach in einer einzigen, riesigen Tabelle ("flache Tabelle") speichern, wie man es oft in Excel macht, bekommen wir schnell Probleme. Diese Probleme nennt man in der Informatik Anomalien. Das häufigste Problem ist die Redundanz.

Was ist Redundanz?

Redundanz bedeutet, dass dieselbe Information unnötigerweise mehrfach gespeichert wird. Das verschwendet nicht nur Speicherplatz, sondern führt fast immer zu Fehlern: Wenn sich ein Datum ändert, muss man es an zig Stellen gleichzeitig ändern. Vergisst man eine Stelle, widersprechen sich die Daten plötzlich. Das nennt man Dateninkonsistenz.

Aufgabe 1: Das Listen-Chaos erleben

Hier ist die Ausleihliste unserer Schulbibliothek. Szenario: Die Schülerin Laura Huber ist umgezogen. Ihre neue Adresse lautet "Hauptplatz 1".

Dein Auftrag: Ändere ihre Adresse in der Tabelle und klicke auf Speichern.

Schüler_Name Adresse Ausgeliehenes_Buch
Laura Huber Mathematik verstehen 5
Felix Maier Dorfstraße 12 Informatik Basics
Laura Huber Python für Anfänger
Laura Huber Englisch Vokabeln

Die Rettung: Das Relationale Modell

Um Redundanz zu vermeiden, zerlegen wir die große Tabelle in mehrere kleine, logische Tabellen (z. B. eine Tabelle nur für Schüler und eine nur für Bücher). Diese Tabellen nennt man Relationen. Damit wir später noch wissen, welcher Schüler welches Buch hat, müssen wir die Tabellen verknüpfen. Dafür brauchen wir sogenannte Schlüssel.

Der Primärschlüssel (Primary Key - PK)

Jede Zeile (wir nennen sie Datensatz) in einer Tabelle muss absolut eindeutig erkennbar sein. Dafür definieren wir eine Spalte als Primärschlüssel. Ein Primärschlüssel darf niemals leer sein und sein Wert darf in der Tabelle nur ein einziges Mal vorkommen.

Aufgabe 2: Den perfekten Primärschlüssel wählen

Wir erstellen eine Tabelle für unsere Klasse. Welches der folgenden Attribute (Spalten) eignet sich am besten als Primärschlüssel, um jeden Schüler jederzeit eindeutig zu identifizieren?