Greta
Inhaltsverzeichnis |
Datenbank-Projekt:
Grundlagen der Datenbank
Themenbegründung
Die Datenbank soll die Verwaltung von Schülern, Lehrern und Kursen in der gymnasialen Oberstufe einer Schule unterstützen. Sie speichert, welche Schüler welche Kurse belegen, welche Lehrkraft einen Kurs unterrichtet und welche Note ein Schüler in einem Kurs erhält. Dadurch können typische Auswertungen durchgeführt werden, zum Beispiel: alle Kurse eines Schülers, alle Schüler eines Kurses oder die Notenübersicht für eine Lehrkraft.
Grundlagen
Datenbasis: Datenmaterial, strukturierte Daten
Datenbankmanagementsystem (DBMS): dient der Sortierung und Verwaltung von Daten
Datenbank: Datenbasis und Datenbankmanagementsystem (DBMS) in Verbindung
Kardinalitäten
1:1-Beziehung: Jeder Entität der Entitymenge A wird genau eine Entität der Entitymenge B zugeordnet und umgekehrt.
1:n-Beziehung: Jeder Entität der Entitymenge A können mehrere Entitäten der Entitymenge B zugeordnet werden, umgekehrt kann jedoch jeder Entität der Menge B nur genau eine Entität der Menge A zugeordnet werden.
m:n-Beziehung: Jeder Entität der Entitymenge A können mehrere Entitäten der Entitymenge B zugeordnet werden und umgekehrt.
Normalformen
ENF/1NF - Erste Normalform: jeder Spalte wird nur eine Information zugeordnet. Dadurch werden erst Abfragen ermöglicht, da es keine Komplikationen bei der Suche gibt.
ZNF/2NF - Zweite Normalform: simultane Aufteilung der Entitäten und Entitymengen in Tabellen. Jede Relation modelliert nur einen Sachverhalt. Das Verständnis der Datenbank Strukturen wird so erleichtert. Außerdem wird Redundanz (Dopplungen) vermieden.
Entity Relationship Modell
Transformation in das Relationenmodell
Aus dem ERM ergeben sich folgende Relationen (Tabellen): -> Primärschlüssel unterstrichen
- SCHUELER (schueler_id, vorname, nachname, stufe)
- LEHRER(lehrer_id, vorname, nachname, kuerzel)
- KURS(kurs_id, fach, art, bezeichnung, lehrer_id)
Datenbank
Tabellenerstellung und Füllung
Abfragen
Ausgabe aller Schüler mit Vorname und Nachname
Ausgabe aller Kurse mit Fach und Kursbezeichnung
Ausgabe aller Lehrer mit Kürzel
Ausgabe aller Schüler einer bestimmten Stufe (z.B. Jahrgang 12)
Ausgabe aller Leistungskurse (art = 'LK') mit Fach und Bezeichnung
Ausgabe aller Lehrer, deren Nachname mit „M“ beginnt
Ausgabe der Anzahl der Schüler pro Stufe
Ausgabe der verschiedenen Kursarten (ohne Wiederholung)
kritische Reflexion zur Modellierung und Umsetzung
Die Modellierung mit SCHUELER, LEHRER und KURS ist bewusst einfach gehalten und gut überschaubar. Sie vermeidet Redundanzen, zeigt die Arbeit mit Primärschlüsseln und ermöglicht grundlegende SQL‑Abfragen wie Listen und Filter.
Kritisch ist, dass wichtige Beziehungen der Realität fehlen, zum Beispiel: Welcher Schüler besucht welchen Kurs bei welchem Lehrer. Dadurch sind keine JOIN‑Abfragen über mehrere Tabellen möglich. Für eine realistische Schulverwaltung müsste das Modell um eine Beziehung zwischen SCHUELER und KURS erweitert werden.
