Zum Inhalt springen

Aufgabe 03 - Funktionale Abhängigkeiten und Schlüssel (Fahrschule)

Zu Zen-Modus wechseln

Aufgabe 03 - Funktionale Abhängigkeiten und Schlüssel (Fahrschule)

Abschnitt betitelt „Aufgabe 03 - Funktionale Abhängigkeiten und Schlüssel (Fahrschule)“

In dieser Übung werden funktionale Abhängigkeiten (FDs) aus einer verbalen Beschreibung abgeleitet und daraus mit der Attributhülle die Kandidatenschlüssel bestimmt (siehe Kapitel 2 - Funktionale Abhängigkeiten und Normalformen). Szenario ist die Verwaltung einer Fahrschule mit Fahrlehrern, Fahrschülern und Terminen. Im Expertenteil wird eine kanonische Überdeckung (minimale FD-Menge) berechnet.

  • Sie leiten funktionale Abhängigkeiten aus einer Sachbeschreibung ab.
  • Sie berechnen die Attributhülle einer Attributmenge.
  • Sie bestimmen daraus Kandidatenschlüssel und den Primärschlüssel.
  • Sie ermitteln eine kanonische Überdeckung und begründen jeden Schritt.
  • Reproduktion: FDs aus der Beschreibung notieren (Teil A).
  • Reorganisation und Transfer: Attributhüllen berechnen und Schlüssel bestimmen (Teile B und C).
  • Reflexion, Problemlösung und Urteilsbildung: eine kanonische Überdeckung herleiten und begründen (Teil D).

Die Übung ist auf etwa zwei Stunden ausgelegt. Teil D ist der Expertenteil.

Eine Fahrschule erfasst ihre Termine in einer einzigen breiten Tabelle mit den Attributen:

termin_id, schueler_nr, schueler_name, lehrer_nr, lehrer_name, fahrzeug, datum, uhrzeit

Es gelten folgende Regeln:

  • Jeder Fahrschüler hat eine eindeutige schueler_nr; daraus folgt sein schueler_name.
  • Jeder Fahrlehrer hat eine eindeutige lehrer_nr; daraus folgt sein lehrer_name.
  • Zu einer termin_id gehört genau ein Schüler, ein Lehrer, ein Fahrzeug, ein Datum und eine Uhrzeit.
  • Ein Fahrzeug kann pro Datum und Uhrzeit nur einmal vergeben sein.
  1. Schreiben Sie alle funktionalen Abhängigkeiten in der Form X → Y auf, die sich aus den Regeln ergeben.
  2. Erklären Sie an einem Beispiel in einem Satz, was die Schreibweise schueler_nr → schueler_name genau bedeutet.
  1. Berechnen Sie die Attributhülle {termin_id}⁺. Welche Attribute lassen sich alle aus termin_id bestimmen?
  2. Berechnen Sie {schueler_nr}⁺ und {fahrzeug, datum, uhrzeit}⁺.
  1. Ist termin_id ein Kandidatenschlüssel? Begründen Sie mit der Attributhülle.
  2. Prüfen Sie, ob {fahrzeug, datum, uhrzeit} ebenfalls ein Kandidatenschlüssel ist.
  3. Nennen Sie alle Kandidatenschlüssel der Tabelle und wählen Sie einen Primärschlüssel begründet aus.
  1. Rechte Seiten vereinzeln: Bringen Sie alle FDs in die Form mit genau einem Attribut auf der rechten Seite.
  2. Überflüssige FDs entfernen: Prüfen Sie für jede FD, ob sie aus den übrigen ableitbar ist (über die Attributhülle), und streichen Sie sie gegebenenfalls.
  3. Linke Seiten reduzieren: Prüfen Sie bei mehrattributigen linken Seiten, ob ein Attribut überflüssig ist.
  4. Geben Sie die kanonische Überdeckung an und erklären Sie in zwei Sätzen, wofür man eine solche minimale FD-Menge beim Datenbankentwurf braucht.
  1. Was besagt eine funktionale Abhängigkeit X → Y?
  2. Wie ist die Attributhülle X⁺ definiert?
  3. Woran erkennt man mit der Attributhülle, dass eine Attributmenge ein Kandidatenschlüssel ist?
  4. Was unterscheidet einen Kandidatenschlüssel von einem Primärschlüssel?
  5. Welche drei Schritte führen zur kanonischen Überdeckung?
  • Ein Dokument aufgabe03_fds.pdf (oder Textdatei) mit allen FDs, den Attributhüllen-Rechenwegen, den Kandidatenschlüsseln und der kanonischen Überdeckung.

HTL Villach, Schuljahr 2026-2027,
https://www.htl-villach.at