Skip to content

Übungsaufgaben

Szenario

Das BSZ Elektrotechnik in Dresden hat beschlossen elektronische Notenbücher einzuführen. Dafür wurde das folgende Relationen-Modell eingeführt:

Relationen Diagram

Aufgaben

Teil 1: Erstellen der Datenbank

  • Aufgabe 1: Erstellen Sie die Tabellen aus dem Relationen-Modell im Microsoft SQL Server Management Studio. Geben Sie die SQL-Anweisungen an und erklären Sie in welcher Reihenfolge diese ausgeführt werden müssen und wieso.
Cheat-Code
-- 1. Tabelle "lehrer" erstellen (keine Abhängigkeiten)
CREATE TABLE lehrer (
    lehrer_id INT PRIMARY KEY,
    vorname VARCHAR(50) NOT NULL,
    nachname VARCHAR(50) NOT NULL
);

-- 2. Tabelle "schueler" erstellen (keine Abhängigkeiten)
CREATE TABLE schueler (
    schueler_id INT PRIMARY KEY,
    vorname VARCHAR(50) NOT NULL,
    nachname VARCHAR(50) NOT NULL,
    geburtsdatum DATE NOT NULL
);

-- 3. Tabelle "kurs" erstellen (Fremdschlüssel auf "lehrer")
CREATE TABLE kurs (
    kurs_id INT PRIMARY KEY,
    lehrer_id INT NOT NULL,
    name VARCHAR(50) NOT NULL,
    FOREIGN KEY (lehrer_id) REFERENCES lehrer(lehrer_id)
);

-- 4. Tabelle "note" erstellen (Fremdschlüssel auf "kurs" und "schueler")
CREATE TABLE note (
    note_id INT PRIMARY KEY,
    kurs_id INT NOT NULL,
    schueler_id INT NOT NULL,
    note INT NOT NULL,
    datum DATE NOT NULL,
    thema VARCHAR(50) NOT NULL,
    FOREIGN KEY (kurs_id) REFERENCES kurs(kurs_id),
    FOREIGN KEY (schueler_id) REFERENCES schueler(schueler_id)
);


  • Aufgabe 2: Fügen Sie folgende Datensätze ein:
Datensätze
lehrer_id vorname nachname
1 Max Mustermann
2 Anna Schmidt
3 Klaus Bauer
kurs_id lehrer_id name
1 1 Mathematik
2 2 Physik
3 1 Informatik
schueler_id vorname nachname geburtsdatum
1 Lisa Müller 2005-03-15
2 Tom Meier 2004-11-22
3 Emma Schneider 2006-01-30
note_id kurs_id schueler_id note datum thema
1 1 1 1 2025-03-06 Analysis
2 1 2 3 2025-03-06 Analysis
3 1 1 2 2025-04-05 Vektorgeometrie
4 1 2 5 2025-04-05 Vektorgeometrie
5 2 1 3 2025-01-13 Quantenphysik
6 2 2 2 2025-01-13 Quantenphysik
7 3 2 5 2025-03-18 Datenbanken
8 3 3 4 2025-03-18 Datenbanken
Cheat-Code
-- Lehrer
INSERT INTO lehrer (lehrer_id, vorname, nachname) VALUES
(1, 'Max', 'Mustermann'),
(2, 'Anna', 'Schmidt'),
(3, 'Klaus', 'Bauer');

-- Kurse
INSERT INTO kurs (kurs_id, lehrer_id, name) VALUES
(1, 1, 'Mathematik'),
(2, 2, 'Physik'),
(3, 1, 'Informatik');

-- Schüler
INSERT INTO schueler (schueler_id, vorname, nachname, geburtsdatum) VALUES
(1, 'Lisa', 'Müller', '2005-03-15'),
(2, 'Tom', 'Meier', '2004-11-22'),
(3, 'Emma', 'Schneider', '2006-01-30');

-- Noten
INSERT INTO note (note_id, kurs_id, schueler_id, note, datum, thema) VALUES
(1, 1, 1, 1, '2025-03-06', 'Analysis'),
(2, 1, 2, 3, '2025-03-06', 'Analysis'),
(3, 1, 1, 2, '2025-04-05', 'Vektorgeometrie'),
(4, 1, 2, 5, '2025-04-05', 'Vektorgeometrie'),
(5, 2, 1, 3, '2025-01-13', 'Quantenphysik'),
(6, 2, 2, 2, '2025-01-13', 'Quantenphysik'),
(7, 3, 2, 5, '2025-03-18', 'Datenbanken'),
(8, 3, 3, 4, '2025-03-18', 'Datenbanken');


Teil 2: SQL Abfragen

Formulieren Sie die SQL-Abfragen für die folgenden Aufgaben.

  • Aufgabe 3: Gesucht ist eine Liste der angebotenen Kurse mit dem Kursnamen und der Anzahl an Kursteilnehmern. Die Kursnamen sollen aufsteigend sortiert sein.
erwartete Ausgabe
Kursname Teilnehmerzahl
Informatik 2
Mathematik 2
Physik 2


  • Aufgabe 4: Gesucht ist eine Liste der angebotenen Kurse mit dem Kursnamen und den Namen des Lehrer (Vor- und Nachname in einem Feld).
erwartete Ausgabe
Kursname Lehrername
Informatik Max Mustermann
Mathematik Max Mustermann
Physik Anna Schmidt


  • Aufgabe 5: Gesucht ist eine Liste an Schülern, die ein Test nicht bestanden haben (ab Note 5). Geben Sie den Schülernamen, den Kursnamen und das Thema des Tests aus.
erwartete Ausgabe
Schueler_Vorname Schueler_Nachname Kursname Thema
Tom Meier Mathematik Vektorgeometrie
Tom Meier Informatik Datenbanken


  • Aufgabe 6: Gesucht ist eine Liste der Durchschnittsnoten der Kurse mit dem Kursnamen, Schüleranzahl und Notendurchschnitt.
erwartete Ausgabe
Kursname Schueleranzahl Notendurchschnitt
Mathematik 2 2
Physik 2 2
Informatik 2 4


  • Aufgabe 7: Gesucht ist eine Liste der erbrachten Noten im März 2025. Geben Sie den Kursnamen, die Note und die teilnehmenden Schüler an.
erwartete Ausgabe
Kursname Note Schueler
Mathematik 1 Lisa Müller
Mathematik 3 Tom Meier
Informatik 5 Tom Meier
Informatik 4 Emma Schneider


Teil 3: Daten Manipulation

  • Aufgabe 8: Max Mustermann hat die Note vom Schüler Tom Meier zum Thema Vektorgeometrie falsch eingetragen. Der Schüler hat ein Notenergebnis von 4. Geben Sie die SQL-Anweisung zum Aktualisieren der Note an.


  • Aufgabe 9: Der Lehrer Klaus Bauer ist bereits vor der Einführung des digitalen Notenbuchs in Rente gegangen. Geben Sie die SQL-Anweisung an, die ihn aus der Lehrer-Tabelle entfernt.


Teil 3: Datenbank-Theorie

  • Aufgabe 10: Definieren Sie den Begriff Datenbankmanagementsystem und erklären Sie in diesem Zusammenhang die Begriffe Front-End und Back-End.


  • Aufgabe 11: Erklären Sie den Begriff Datenbanksystem. Gehen Sie dabei auf dessen Bestandteile und deren Aufgaben ein.