AG-Anmeldung
AFB I–IIEine Schule verwaltet ihre Arbeitsgemeinschaften in einer Datenbank. Jede AG wird von einer Lehrkraft geleitet; Schülerinnen und Schüler können sich für beliebig viele AGs anmelden.
Kurzschreibweise:
Teilnehmer(TNr, Name, Jahrgang)Kurs(KNr, Titel, Tag, ↑LKuerzel)Lehrkraft(Kuerzel, Name)Anmeldung(↑TNr, ↑KNr, Datum)
- Zeichnen Sie ein ER-Diagramm zu diesem Schema mit Kardinalitäten und Schlüsselattributen.
- Geben Sie eine SQL-Abfrage an, die die Titel aller AGs am Dienstag mit dem Namen der leitenden Lehrkraft ausgibt.
- Erläutern Sie, warum Anmeldung einen zusammengesetzten Primärschlüssel hat.
Hinweise
Hinweis zu Aufgabe a)
Hinweis zu Aufgabe b)
Hinweis zu Aufgabe c)
Erwartungshorizont
Erwartungshorizont zu Aufgabe a)
Entitätstypen Teilnehmer (TNr), Kurs (KNr), Lehrkraft (Kuerzel). Beziehung Teilnehmer — meldet an (Attribut Datum) — Kurs mit n:m; Lehrkraft — leitet — Kurs mit 1:n. Schlüsselattribute unterstrichen.
Erwartungshorizont zu Aufgabe b)
SELECT k.Titel, l.Name FROM Kurs k, Lehrkraft l WHERE k.LKuerzel = l.Kuerzel AND k.Tag = 'Dienstag'
Erwartungshorizont zu Aufgabe c)
Eine Anmeldung ist erst durch die Kombination aus Teilnehmer und Kurs eindeutig: Ein Teilnehmer meldet sich für mehrere Kurse an, ein Kurs hat mehrere Teilnehmer. Der zusammengesetzte Schlüssel verhindert zugleich doppelte Anmeldungen derselben Person zum selben Kurs.
Auswertung der AG-Daten
AFB II–IIIEs gilt das Schema aus Aufgabe 1. Die Schulleitung möchte wissen, welche AGs besonders beliebt sind.
Kurzschreibweise:
Teilnehmer(TNr, Name, Jahrgang)Kurs(KNr, Titel, Tag, ↑LKuerzel)Lehrkraft(Kuerzel, Name)Anmeldung(↑TNr, ↑KNr, Datum)
- Geben Sie eine Abfrage an, die für jede AG den Titel und die Anzahl der Anmeldungen ausgibt, absteigend sortiert.
- Erweitern Sie die Abfrage so, dass nur AGs mit mehr als 15 Anmeldungen aus dem Jahrgang 11 erscheinen.
- Erörtern Sie, ob die Tabelle Anmeldung zusammen mit dem Datum aus Sicht des Datenschutzes unbedenklich ist.
Hinweise
Hinweis zu Aufgabe a)
Hinweis zu Aufgabe b)
Hinweis zu Aufgabe c)
Erwartungshorizont
Erwartungshorizont zu Aufgabe a)
SELECT k.Titel, COUNT(*) AS Anzahl FROM Kurs k, Anmeldung a WHERE k.KNr = a.KNr GROUP BY k.KNr, k.Titel ORDER BY Anzahl DESC
Gruppieren nur nach Titel wird anerkannt, wenn Titel eindeutig sind.
Erwartungshorizont zu Aufgabe b)
SELECT k.Titel, COUNT(*) AS Anzahl FROM Kurs k, Anmeldung a, Teilnehmer t WHERE k.KNr = a.KNr AND a.TNr = t.TNr AND t.Jahrgang = 11 GROUP BY k.KNr, k.Titel HAVING COUNT(*) > 15 ORDER BY Anzahl DESC
Erwartungshorizont zu Aufgabe c)
Pro: Die Daten sind für die Organisation nötig (Zweckbindung), das Datum dient z. B. der Reihenfolge bei vollen Kursen. Contra: Zusammen mit Namen entsteht ein Interessenprofil; das Datum ist für die Auswertung nicht nötig. Folgerung: Zugriff beschränken, Daten nach Schuljahresende löschen, für Statistiken nur anonymisierte Zahlen weitergeben. Bewertet wird eine abgewogene, begründete Position.
