Informatik

Die Festivaldatenbank

Mit dieser Datenbank arbeitest du den ganzen Lernpfad über. Es lohnt sich, sie einmal gründlich anzusehen – so, wie man sich in einem fremden Programm zuerst umsieht, bevor man etwas ändert.

Das Datenbankschema

band(band_id, name, gruendungsjahr, herkunftsland)
genre(genre_id, name)
band_genre(band_id, genre_id)
person(person_id, vorname, nachname, geburtsjahr, land)
mitgliedschaft(person_id, band_id, instrument, seit)
buehne(buehne_id, name, kapazitaet, ueberdacht)
auftritt(auftritt_id, band_id, buehne_id, datum, beginn, dauer_min, zuschauer)
besucherin(besucher_id, vorname, nachname, geburtsjahr, plz, email)
ticket(ticket_id, besucher_id, kategorie, preis, kaufdatum)
bewertung(besucher_id, auftritt_id, punkte)

Die jeweils ersten Attribute sind die Primärschlüssel; bei band_genre, mitgliedschaft und bewertung sind es die ersten beiden zusammen.

Und so hängen die Tabellen zusammen:

graph LR
    person -->|mitgliedschaft| band
    band -->|band_genre| genre
    band --> auftritt
    buehne --> auftritt
    besucherin --> ticket
    besucherin -->|bewertung| auftritt

Im Datenbankbaum links in der IDE siehst du dasselbe: alle Tabellen, ihre Spalten, die Datentypen und – hinter den Fremdschlüsseln – auf welche Tabelle sie verweisen. Klapp ihn auf, wann immer du einen Spaltennamen suchst. Das ist schneller als raten.

Umsehen

Setze den Cursor nacheinander in jede der vier Anweisungen und führe sie mit ▷ aus.

a) Wie viele Bands, Bühnen, Auftritte und Genres gibt es?

b) Über wie viele Tage läuft das Festival? Woran erkennst du das?

c) In der Tabelle buehne steht in der Spalte ueberdacht nur 0 oder 1. Was bedeutet das vermutlich, und warum steht dort nicht „ja" und „nein"?

Tipp: Wo steht die Anzahl?

Über der Ergebnistabelle steht 1-22/22 – die Zahl hinter dem Schrägstrich ist die Gesamtzahl. Alternativ zeigt der Datenbankbaum links hinter jedem Tabellennamen die Anzahl der Datensätze.

Lösung. Erfrage das Passwort bei deiner Lehrkraft.

Eine erste eigene Abfrage

Der Grundaufbau jeder Abfrage sieht so aus:

SELECT  spalten        -- was soll im Ergebnis stehen?
  FROM  tabelle        -- woher kommen die Zeilen?
 WHERE  bedingung      -- welche Zeilen kommen ins Ergebnis?

Das Ergebnis einer Abfrage ist selbst wieder eine Tabelle. Die ursprüngliche Tabelle bleibt unverändert.

a) Sag zuerst voraus, wie viele Zeilen die Abfrage liefert. Führe sie dann aus.

b) Ändere sie so ab, dass sie alle Bands zeigt, die nicht aus Deutschland kommen.

c) Zeige alle Bühnen mit einer Kapazität über 1000, mit Namen und Kapazität.

d) Zeige alle Auftritte am 19. Juli 2026.

Tipp 1: ungleich

Für „ist nicht gleich" schreibt man in SQL <> (oder !=).

Tipp 2: Texte und Zahlen

Texte stehen in einfachen Anführungszeichen: 'Deutschland'. Zahlen stehen ohne: 1000. Ein Datum wird hier als Text gespeichert, kommt also ebenfalls in Anführungszeichen: '2026-07-19'.

Lösung. Erfrage das Passwort bei deiner Lehrkraft.

In der Datenbank stehen keine Umlaute – die Bühne heißt Hauptbuehne, das Land Oesterreich. Das ist keine Schlampigkeit, sondern eine bewusste Entscheidung des Festivalteams: Die Daten sollen sich zwischen verschiedenen Systemen austauschen lassen, ohne dass die Zeichenkodierung Ärger macht.

Überlege: Welchen Preis zahlt man dafür? Was passiert, wenn jemand nach Österreich sucht?


Selbsttest

Die Festivaldatenbank

Teilbare URL erstellen

Abschnitte auswählen