Informatik · Klasse 8–13
Datenbanken: Tabellen, Schlüssel und SQL
Datenbanken speichern Daten geordnet in Tabellen. Du lernst Datensatz, Attribut, Primär- und Fremdschlüssel und erste SQL-Abfragen.
0 von 9 Aufgaben gelöst
Stell dir die Ausleihliste der Schulbibliothek als Zettelwirtschaft vor: Zwei Schüler heißen Schmidt, ein Buchtitel ist falsch geschrieben, und niemand findet etwas. Eine Datenbank räumt dieses Chaos auf. Sie ordnet Daten in Tabellen und verknüpft sie eindeutig.
Deine Lernziele
Hake ab, was du schon kannst. Löst du alle Aufgaben eines Abschnitts, hakt Mela das Ziel für dich ab.
4 Abschnitte
Eine relationale Datenbank speichert Daten in Tabellen. Jede Spalte beschreibt eine Eigenschaft, jede Zeile ein einzelnes Objekt. Das Programm, das die Daten verwaltet, heißt Datenbankmanagementsystem, kurz DBMS.
Definition
Datenbank und DBMS
Die Datenbank ist der geordnete, dauerhaft gespeicherte Datenbestand. Das DBMS ist die Software, die Daten speichert, sucht, ändert und löscht.
| SchuelerID | Vorname | Nachname | Klasse |
|---|---|---|---|
| 1 | Lena | Schmidt | 7b |
| 2 | Tim | Schmidt | 8a |
| 3 | Ali | Yılmaz | 7b |
Merke: Spalte = Attribut (z. B. Nachname). Zeile = Datensatz (z. B. alles über Tim). Ein einzelner Zelleninhalt wie 8a ist ein Attributwert.
Teste dich
Namen können doppelt vorkommen, wie Schmidt in unserer Tabelle. Deshalb bekommt jeder Datensatz einen Schlüssel, der ihn eindeutig kennzeichnet. Über diesen Schlüssel können andere Tabellen auf ihn verweisen.
Definition
Primärschlüssel
Ein Primärschlüssel ist ein Attribut (oder eine minimale Kombination von Attributen), dessen Wert jeden Datensatz eindeutig identifiziert. Er darf nicht leer sein.
Definition
Fremdschlüssel
Ein Fremdschlüssel ist ein Attribut, das auf den Primärschlüssel einer anderen Tabelle verweist.
Beispiel: Tabelle Ausleihe
- 1Ausleihe(AusleihID, BuchID, SchuelerID, Datum)
- 2AusleihID ist der Primärschlüssel dieser Tabelle.
- 3SchuelerID = 2 verweist eindeutig auf Tim Schmidt.
- 4Nur der Nachname Schmidt wäre mehrdeutig.
Teste dich
Tabellen hängen über Schlüssel zusammen. Wie viele Datensätze auf jeder Seite beteiligt sein können, beschreibt die Kardinalität. Beispiel: Eine Klasse hat viele Schüler, aber jeder Schüler ist in genau einer Klasse. Das ist eine 1:n-Beziehung.
| Beziehung | Bedeutung | Umsetzung |
|---|---|---|
| 1:1 | Höchstens ein Partner auf jeder Seite | Fremdschlüssel, der nur einmal vorkommen darf |
| 1:n | Einer auf der einen, viele auf der anderen Seite | Fremdschlüssel auf der n-Seite |
| n:m | Viele auf beiden Seiten | Eigene Beziehungstabelle |
Merke: Bei 1:n steht der Fremdschlüssel auf der n-Seite. Eine n:m-Beziehung löst du mit einer Beziehungstabelle in zwei 1:n-Beziehungen auf.
Teste dich
SQL steht für Structured Query Language. Die Grundform einer Abfrage hat drei Teile. FROM nennt die Tabelle, WHERE filtert die Zeilen, SELECT wählt die Spalten, die angezeigt werden.
Beispiel: Alle aus der 7b
- 1SELECT Vorname, Nachname FROM Schueler WHERE Klasse = '7b';
- 2Zeile 1: 7b, passt. Zeile 2: 8a, passt nicht. Zeile 3: 7b, passt.
- 3Ergebnis: Lena Schmidt und Ali Yılmaz
Merke: Lies eine Abfrage in der Reihenfolge FROM → WHERE → SELECT: erst die Tabelle, dann die passenden Zeilen, dann die gewünschten Spalten. Text steht in einfachen Anführungszeichen, Zahlen nicht.
Teste dich
Alles auf einen Blick
Datenbanken
Tabelle
Zeilen sind Datensätze, Spalten Attribute
Primärschlüssel
eindeutig und nie leer
Fremdschlüssel
verweist auf andere Tabelle
Eins zu viele
Fremdschlüssel auf der n-Seite
Viele zu viele
eigene Beziehungstabelle
SQL
SELECT Spalten FROM Tabelle WHERE Bedingung
Musteraufgabe · Schritt für Schritt
Dicke Bücher in der Schulbibliothek finden
- 1Tabelle Buecher: (1, Sternenfahrt, 412 Seiten), (2, Das Moorhaus, 180), (3, Code Blau, 305)
- 2Abfrage: SELECT Titel FROM Buecher WHERE Seiten > 300;
- 3FROM: Wir schauen in die Tabelle Buecher.
- 4WHERE: 412 > 300 ja, 180 > 300 nein, 305 > 300 ja
- 5SELECT: Ergebnis sind die Titel Sternenfahrt und Code Blau.
Lückentext
Wähl in jeder Lücke das passende Wort und prüf dann deine Antworten.
Eine Zeile einer Tabelle heißt . Der Primärschlüssel muss jeden Datensatz kennzeichnen. Bei einer 1:n-Beziehung steht der Fremdschlüssel auf der .
Karteikasten
Erst selbst überlegen, dann umdrehen.
Übung mit Feedback