Full Stack mit KI · Modul 4: Backend, APIs & Datenbanken

Lektion 5 von 7Text 13 Min.

SQL-Grundlagen: Daten speichern und abfragen

Worum es geht: SQL ist die Sprache, in der fast alle Datenbanken angesprochen werden – seit fünfzig Jahren und auf absehbare Zeit weiter. Sie besteht aus wenigen Bausteinen, die sich kombinieren lassen, und ist damit eine der beständigsten Investitionen, die man in Technikkenntnisse stecken kann.

1. Die sechs Bausteine

ErkundenSechs Bausteine, die fast alles abdecken
SELECT name, flaeche FROM anfragen;

Welche Spalten sollen zurückkommen? Ein Stern holt alles – im Betrieb besser die Spalten nennen, die gebraucht werden, sonst wandern unnötig große Datenmengen durchs Netz.

SQL ist seit fünfzig Jahren im Einsatz und hat sich kaum verändert – gelernte Kenntnisse veralten hier nicht.

2. Wie Daten strukturiert werden

Eine Tabelle entspricht einer Art von Gegenstand: Anfragen, Kunden, Rechnungen. Jede Zeile ist ein Exemplar, jede Spalte eine Eigenschaft mit festem Typ. Eine Spalte dient als Kennung – üblicherweise id –, und Beziehungen entstehen, indem eine Tabelle die Kennung einer anderen speichert.

Die wichtigste Regel dabei: Jede Angabe steht an genau einer Stelle. Wenn der Ort eines Kunden in der Kundentabelle steht, gehört er nicht zusätzlich in jede Anfrage – sonst gibt es nach dem ersten Umzug zwei Wahrheiten.

Beim Entwerfen einer Datenbank gilt: Erst die Gegenstände benennen, dann die Eigenschaften, dann die Beziehungen. Diese Reihenfolge verhindert die meisten Strukturfehler, die später teuer werden.

3. Indizes in einem Absatz

Ein Index ist ein Verzeichnis, das die Suche nach einer bestimmten Spalte beschleunigt – wie das Register eines Buches. Ohne Index muss die Datenbank jede Zeile durchsehen. Faustregel: Ein Index auf jede Spalte, nach der häufig gefiltert oder sortiert wird. Nicht auf alles, denn jeder Index verlangsamt das Schreiben und braucht Platz.

4. SQL-Injection – die wichtigste Sicherheitsregel

Wenn Eingaben eines Nutzers direkt in eine Abfrage eingebaut werden, kann jemand daraus eine andere Abfrage machen. Ein Name wie '; DROP TABLE anfragen; -- führt dann dazu, dass die Tabelle verschwindet. Dieser Angriff ist so alt wie das Web und bis heute unter den häufigsten.

Die Abhilfe ist schlicht und ohne Ausnahme anzuwenden: Werte werden nie in die Abfrage geschrieben, sondern als Parameter übergeben. Die Datenbank behandelt sie dann als Wert, nie als Befehl. Jede Bibliothek unterstützt das; wenn ein KI-Agent eine Abfrage mit zusammengesetztem Text liefert, ist das ein Fehler, der sofort zu beheben ist.

5. Welche Datenbank

SystemWann
SQLiteEine Datei, kein Server. Ideal zum Lernen, für kleine Werkzeuge und für Tests
PostgreSQLDer Standard für Webanwendungen: zuverlässig, funktionsreich, kostenlos
MySQL / MariaDBSehr verbreitet, vor allem im WordPress-Umfeld
DokumentdatenbankenWenn die Struktur der Daten stark schwankt – seltener nötig, als oft angenommen

6. Häufige Fragen

Was ist ein ORM? Eine Zwischenschicht, die SQL im Hintergrund erzeugt, damit man in der Programmiersprache arbeiten kann. Bequem – und ein Grund mehr, SQL zu verstehen, denn bei langsamen Abfragen müssen Sie sehen, was das ORM daraus gemacht hat.

Wie sichert man eine Datenbank? Regelmäßige Sicherungen, die jemand schon einmal zurückgespielt hat. Eine Sicherung, deren Wiederherstellung nie geprüft wurde, ist keine.

Löschen oder markieren? In den meisten Anwendungen ist eine Markierung besser als echtes Löschen – dann lässt sich ein Versehen zurücknehmen. Für personenbezogene Daten gilt das Gegenteil: Wo Löschpflichten bestehen, muss tatsächlich gelöscht werden.

Stand: September 2026. Die Übungen laufen vollständig in Ihrem Browser – es wird nichts gespeichert oder übertragen.

Fortschritt sichern

Kostenlos registrieren, Lektionen abhaken und 3 Kernideen als Karteikarten wiederholen.