Kodokon kodokon.com

Das relationale Modell: Tabellen, Zeilen, Spalten

Entdecke, wie eine Datenbank Informationen in Tabellen organisiert, und erstelle deine erste Tabelle in SQLite.

8 Min. · 3 Fragen

Diese Lektion in Kodokon öffnen

Eine Datenbank ist eine Software, die Informationen organisiert und dauerhaft speichert, selbst wenn der Computer ausgeschaltet ist. Das am weitesten verbreitete Modell ist das relationale Modell: Die Daten werden in Tabellen angeordnet. Eine Tabelle sieht aus wie eine Tabellenkalkulation: Jede Spalte beschreibt eine Eigenschaft (einen Titel, einen Preis...), und jede Zeile stellt einen vollständigen Eintrag dar (zum Beispiel ein bestimmtes Buch). SQL (Structured Query Language) ist die Sprache, mit der man diese Tabellen erstellt und ihren Inhalt abfragt. Jeder Befehl, den du an die Datenbank sendest, wird Query (Abfrage) genannt.

SQL
CREATE TABLE books (
  id INTEGER PRIMARY KEY,
  title TEXT,
  author TEXT,
  genre TEXT,
  year INTEGER,
  price REAL
);
Unsere Beispieltabelle: eine kleine Bibliothek

Zerlegen wir diese Query. CREATE TABLE books erstellt eine Tabelle namens books. Innerhalb der Klammern deklariert jede Zeile eine Spalte: ihren Namen, dann ihren Typ, also die Art von Daten, die sie akzeptiert. In SQLite sind die wichtigsten Typen INTEGER (ganze Zahl), REAL (Dezimalzahl), TEXT (Text) und BLOB (Binärdaten wie ein Bild). Das Fehlen eines Werts wird als NULL geschrieben. Schließlich bezeichnet PRIMARY KEY den Primärschlüssel: eine Spalte, deren Wert jede Zeile eindeutig identifiziert, wie eine Aktennummer.

SQL
INSERT INTO books (id, title, author, genre, year, price)
VALUES
(1, 'Dune', 'Herbert', 'sf', 1965, 9.9),
(2, 'Fondation', 'Asimov', 'sf', 1951, 8.5),
(3, '1984', 'Orwell', 'sf', 1949, 7.2),
(4, 'Croc-Blanc', 'London', 'aventure', 1906, 5.5),
(5, 'Les Robots', 'Asimov', 'sf', 1950, 7.9),
(6, 'Deux ans de vacances', 'Verne', 'aventure', 1888, 6.9),
(7, 'Le Petit Prince', 'Saint-Exupery', 'conte', 1943, 6.5);
Kopiere diesen Block direkt nach dem CREATE TABLE

Die INSERT INTO-Query fügt der Tabelle Zeilen hinzu: In der letzten Lektion gehen wir ausführlich darauf ein. Beachte, dass Textwerte in einfache Anführungszeichen ('Dune') gesetzt werden, niemals in doppelte. Prüfen wir nun mit einer Lese-Query, ob alles an seinem Platz ist: SELECT.

SQL
SELECT * FROM books;
Der Stern * bedeutet "alle Spalten"

Du solltest 7 Zeilen und 6 Spalten sehen: Deine erste Datenbank funktioniert. Bewahre das CREATE TABLE + INSERT-Skript aus dieser Lektion gut auf: Jede folgende Lektion baut auf dieser selben books-Tabelle auf. Wenn du deinen Browser oder dein Terminal schließt, führe es einfach erneut aus, um vom selben Punkt neu zu starten.

Wissenscheck

Stelle sicher, dass du die wichtigsten Punkte dieser Lektion behalten hast.

  1. Was stellt eine Zeile in einer Tabelle dar?
    • Eine Eigenschaft, etwa den Titel oder den Preis
    • Einen vollständigen Eintrag, etwa ein bestimmtes Buch
    • Den Datentyp einer Spalte
  2. Welcher SQLite-Typ eignet sich zum Speichern eines Preises wie 6.5?
    • INTEGER
    • TEXT
    • REAL
    • BLOB
  3. Wozu dient die PRIMARY KEY-Klausel auf der id-Spalte?
    • Die Zeilen automatisch alphabetisch zu sortieren
    • Jede Zeile eindeutig zu identifizieren
    • Negative Zahlen zu verbieten