MINT lernen

Übungen: Redundanzen und Anomalien

Zehn Übungen zu doppelten Daten, ihren Folgen und zum sauberen Zerlegen.

Dein Fortschritt:
0 / 0 Aufgaben
1

Übungsaufgaben

Zehn Übungen zum Klicken, Ziehen und Knobeln — von AFB I bis AFB III. Jede Übung gibt dir sofort Rückmeldung; wenn du hängst, helfen dir die zwei gestuften Tipps.

A1
Wo steckt Redundanz?
AFB I

Eine Volkshochschule speichert Kursbuchungen in einer einzigen Tabelle. Gib alle Informationen an, die redundant gespeichert sind.

Tabelle Buchung
BuchungNrTeilnehmerWohnortKursLeitungGebühr
1KrausPeineYogaHartmann60
2LindCelleYogaHartmann60
3KrausPeineSpanischRuiz90
4MettCelleTöpfernWolf75
5LindCelleSpanischRuiz90
Mehrere Antworten sind richtig. Markiere alle zutreffenden und klicke dann auf „Prüfen“.
Redundant ist eine Tatsache, die mehrfach dasteht: Hartmann bei Yoga steht zweimal, Kraus/Peine zweimal, Spanisch/90 € zweimal. Mett/Celle steht nur einmal.
Frage: Welche Aussage steht in mehr als einer Zeile?Warum? Redundanz heißt: dieselbe Information mehrfach.
Hilfe: Suche Kombinationen wie „Yoga – Hartmann“, die sich in mehreren Zeilen wiederholen.
A2
Stimmt's? — Anomalien
AFB I

Fünf Aussagen zur Tabelle Buchung. Ordne jede als richtig oder falsch ein.

5 Aussagen nacheinander. Eine falsche Einschätzung reicht — dann startest du die Serie mit „Neue Runde“ neu.
Aussage 1 von 5

Jede der drei Anomalien hat dieselbe Ursache: Informationen über Teilnehmer, Kurse und Buchungen stecken in einer Tabelle.
Frage: Was passiert beim Einfügen, Ändern, Löschen?Warum? Spiele jede Operation an der Tabelle durch.
Hilfe: Einfügen ohne Buchung? Ändern in wie vielen Zeilen? Was verschwindet beim Löschen?
A3
Lückentext: Anomalien
AFB I

Nenne die passenden Fachbegriffe — ein Wort bleibt übrig.

Wort anklicken, dann Lücke anklicken (oder umgekehrt) — mit Tab und Enter geht es genauso. Ein Klick auf eine gefüllte Lücke legt das Wort zurück.

Steht dieselbe Information mehrfach in der Datenbank, spricht man von . Muss eine Änderung in mehreren Zeilen erfolgen, liegt eine vor. Kann man einen neuen Kurs ohne Teilnehmer nicht speichern, ist das eine . Geht beim Entfernen einer Buchung die Kursinformation verloren, heißt das . Widersprechen sich zwei Kopien, ist die Datenbank in einem Zustand der .

Der Primärschlüssel verhindert doppelte Datensätze, aber keine Redundanz innerhalb verschiedener Datensätze.
Frage: Welche Anomalie gehört zu welcher Operation?Warum? Die Namen verraten die Operation.
Hilfe: Einfügen, Ändern, Löschen — dazu Redundanz als Ursache und Inkonsistenz als Folge.
A4
Welche Anomalie ist das?
AFB I

Ordne jedes Problem aus einer Tabelle Lieferung(LiefNr, Artikel, Lieferant, LieferantTelefon) der passenden Anomalie zu.

Ziehe jede Karte in den passenden Korb — oder wähle sie mit Enter aus und drücke dann die Ziffer des Korbs (0 legt sie zurück).
1Einfügeanomalie
2Änderungsanomalie
3Löschanomalie
Zwei widersprüchliche Telefonnummern sind die Folge einer Änderungsanomalie — die Inkonsistenz.
Frage: Welche Operation löst das Problem aus?Warum? Einfügen, Ändern oder Löschen.
Hilfe: Neu erfassen → Einfügen, mehrere Zeilen anfassen → Ändern, etwas verschwindet mit → Löschen.
A5
Wie oft ändern?
AFB I

In der Tabelle Buchung oben wird der Kurs Spanisch ab sofort von Frau Ruiz an Herrn Beck übergeben. Bestimme, wie viele Attributwerte geändert werden müssen.

Überlege selbst und trage das Ergebnis ein — Enter prüft direkt.
In beiden Spanisch-Buchungen (3 und 5) steht „Ruiz“. Nach der Zerlegung wäre es nur ein Wert in der Tabelle Kurs.
Frage: In wie vielen Zeilen steht Spanisch?Warum? Die Leitung steht in jeder Buchung des Kurses.
Hilfe: Zähle die Buchungen mit Kurs = Spanisch.
A6
So zerlegt man eine Tabelle
AFB II

Stelle die Schritte dar, mit denen man die Tabelle Buchung redundanzfrei zerlegt.

Ziehe die Karten in die richtige Reihenfolge — mit der Tastatur: ↑/↓ verschiebt, Shift+↑/↓ wechselt nur den Fokus.
1Themen erkennen: Teilnehmer, Kurs, Buchung.
2Für jedes Thema eine Tabelle mit eigenem Primärschlüssel anlegen.
3Attribute der passenden Tabelle zuordnen (Leitung und Gebühr zu Kurs).
4In Buchung Fremdschlüssel auf Teilnehmer und Kurs setzen.
5Prüfen: Liefert der Verbund der Teiltabellen wieder alle Buchungen?
Der letzte Schritt fehlt oft: Eine Zerlegung ist nur gut, wenn sie verlustfrei ist.
Frage: Was braucht jede neue Tabelle zuerst?Warum? Ohne Schlüssel kann man nicht verweisen.
Hilfe: Themen → Tabellen mit Schlüssel → Attribute → Fremdschlüssel → Probe.
A7
Zellen sparen
AFB II

Die Tabelle Buchung oben wird zerlegt in Teilnehmer(Teilnehmer, Wohnort), Kurs(Kurs, Leitung, Gebühr) und Buchung(BuchungNr, Teilnehmer, Kurs). Ermittle die Zahl der gespeicherten Attributwerte.

Löse die Kette Schritt für Schritt: Erst wenn ein Schritt stimmt, wird der nächste freigeschaltet. Enter prüft.
  1. vorher: Zellen in der alten Tabelle Buchung Werte
  2. Teilnehmer: 3 Personen · 2 Attribute Werte
  3. Kurs: 3 Kurse · 3 Attribute Werte
  4. neue Buchung: 5 Buchungen · 3 Attribute Werte
  5. nachher insgesamt Werte
Hier ist die Zahl der Zellen gleich geblieben — aber jede Tatsache steht nur noch einmal. Bei hunderten Buchungen spart die Zerlegung deutlich Speicher.
Frage: Wie viele Werte hat eine Tabelle?Warum? Zeilen mal Spalten.
Hilfe: Vorher 5 · 6; nachher je Teiltabelle Zeilen · Spalten addieren.
A8
Welche Tabelle bekommt das Attribut?
AFB II

Nach der Zerlegung gibt es Teilnehmer, Kurs und Buchung. Begründe deine Wahl, indem du jedem Attribut die passende Tabelle zuordnest.

Frage: Wovon hängt der Wert ab?Warum? Ein Attribut gehört in die Tabelle des Objekts, das es bestimmt.
Hilfe: Gleich für alle Buchungen eines Kurses → Kurs; verschieden je Anmeldung → Buchung.
A9
Eine missglückte Zerlegung
AFB III

Ein Schüler hat Buchung zerlegt in Teilnehmer(Teilnehmer, Wohnort, Kurs) und Kurs(Kurs, Leitung, Gebühr). Überprüfe seine Behauptungen — drei sind falsch.

In diesem Text stecken Fehler. Klicke genau die falschen Zeilen an — die richtigen musst du stehen lassen.
Teilnehmer und Kurse stehen in einer m:n-Beziehung. Die fehlt hier — das ist der typische Zerlegungsfehler.
Frage: Wie viele Kurse darf ein Teilnehmer haben?Warum? Schau auf den Primärschlüssel von Teilnehmer.
Hilfe: Ein Primärschlüsselwert = eine Zeile = ein Wert für Kurs.
A10
Lohnt sich die Zerlegung?
AFB III

Beurteile für jede Situation, wie dringend eine Zerlegung der Tabelle ist.

Wähle für jede Zeile eine Stufe: 1 = unnötig, 2 = kaum nötig, 3 = sinnvoll, 4 = wichtig, 5 = dringend. Mit der Tastatur: Tab zur Zeile, ←/→ zwischen den Stufen, Enter setzt.
1 = unnötig5 = dringend
Eine Tabelle mit 3 Zeilen, die nie geändert wird.
Eine Kundentabelle, in der die Anschrift bei jeder Bestellung erneut gespeichert wird; Kunden ziehen oft um.
Eine Tabelle, in der Fremdschlüsselwerte mehrfach vorkommen.
Eine Tabelle, in der Kursgebühren bei jeder Buchung stehen und jährlich steigen.
Eine Liste von Messwerten mit Zeitpunkt und Wert.
Mehrfache Fremdschlüsselwerte sind keine Redundanz. Dringend wird es, wenn redundante Werte sich häufig ändern.
Frage: Ändern sich die redundanten Werte?Warum? Anomalien schaden vor allem bei Änderungen.
Hilfe: Häufige Änderungen + viele Kopien = hohes Risiko für Inkonsistenz.