Kardinalität, Redundanzen, Anomalien

Geschätzte Lektüre: 4 Minuten 106 Ansichten

Kardinalität

Die Kardinalität beschreibt, in welchem zahlenmäßigen Verhältnis die Datensätze zweier Tabellen (bzw. Entitätstypen) zueinander stehen. Sie ist grundlegend für das Datenbankdesign.

1:1-Beziehung (Eins-zu-Eins)

Jedem Datensatz in Tabelle A entspricht genau ein Datensatz in Tabelle B und umgekehrt. In der Praxis eher selten — oft ein Zeichen dafür, dass die Daten in eine Tabelle zusammengeführt werden könnten.

Beispiel: Jede Person hat genau einen Reisepass, und jeder Reisepass gehört genau einer Person.

1:N-Beziehung (Eins-zu-Viele)

Jedem Datensatz in Tabelle A können mehrere Datensätze in Tabelle B entsprechen, aber jeder Datensatz in Tabelle B gehört genau zu einem Datensatz in Tabelle A. Dies ist die häufigste Beziehungsart.

Beispiel: Ein Kunde kann viele Bestellungen aufgeben, aber jede Bestellung gehört genau einem Kunden. Die KundenID wird als Fremdschlüssel in der Bestellungstabelle gespeichert.

N:M-Beziehung (Viele-zu-Viele)

Mehrere Datensätze in Tabelle A können mehreren Datensätzen in Tabelle B entsprechen. Diese Beziehung kann nicht direkt durch Fremdschlüssel abgebildet werden — es wird eine Zwischentabelle (Verbindungstabelle) benötigt.

Beispiel: Ein Student belegt mehrere Kurse, und ein Kurs hat mehrere Studenten. Die Zwischentabelle ‚Kursbelegungen‘ enthält StudentenID und KursID als zusammengesetzten Primärschlüssel.

KardinalitätBedeutungUmsetzungBeispiel
1:1Genau eine EntsprechungFK in einer der TabellenPerson — Reisepass
1:NEiner zu vieleFK in der N-TabelleKunde — Bestellungen
N:MViele zu vieleZwischentabelle mit zwei FKsStudent — Kurse

Redundanzen

Redundanz bezeichnet das mehrfache Speichern derselben Information in einer Datenbank. Redundanzen entstehen häufig bei schlecht strukturierten Datenbanken und führen zu einer Reihe von Problemen.

Beispiel für Redundanz: Wird in jeder Bestellzeile der vollständige Name und die Adresse des Kunden gespeichert, erscheinen diese Daten für jeden Kunden so oft, wie er Bestellungen aufgegeben hat.

Redundanzen verursachen folgende Probleme: erhöhter Speicherbedarf, Inkonsistenzen bei Änderungen (muss an mehreren Stellen geändert werden), und sie erschweren die Wartung.

Die systematische Beseitigung von Redundanzen ist eines der Hauptziele der Normalisierung (Kapitel 3).

Anomalien

Anomalien sind unerwünschte Nebeneffekte bei Datenbankoperationen, die durch schlechtes Datenbankdesign (insbesondere Redundanzen) entstehen. Es gibt drei Arten:

Einfügeanomalie (Insertion Anomaly)

Ein Datensatz kann nicht eingefügt werden, ohne gleichzeitig andere (möglicherweise noch unbekannte) Daten anzugeben.

Beispiel: In einer schlecht strukturierten Tabelle, die Kunden und ihre Bestellungen kombiniert, kann ein neuer Kunde ohne erste Bestellung nicht erfasst werden, weil die Bestelldaten obligatorisch sind.

Löschanomalie (Deletion Anomaly)

Beim Löschen eines Datensatzes gehen unbeabsichtigt andere, noch benötigte Informationen verloren.

Beispiel: Wird die letzte Bestellung eines Kunden gelöscht, verschwindet damit auch der Kundendatensatz — obwohl der Kunde weiterhin im System bekannt sein sollte.

Änderungsanomalie (Update Anomaly)

Muss eine Information geändert werden, die redundant gespeichert ist, muss sie an mehreren Stellen aktualisiert werden. Wird eine Stelle vergessen, entsteht eine Inkonsistenz.

Beispiel: Die Adresse eines Kunden steht in 50 Bestellzeilen. Zieht der Kunde um, muss die Adresse 50-mal geändert werden. Wird eine Stelle übersehen, hat der Kunde zwei unterschiedliche Adressen in der Datenbank.

AnomalieUrsacheAuswirkung
EinfügeanomalieVerknüpfte Pflichtdaten fehlenDatensatz kann nicht eingefügt werden
LöschanomalieDaten sind unnötig verknüpftLöschen entfernt zu viele Informationen
ÄnderungsanomalieRedundante SpeicherungInkonsistente Datenstände möglich
Dieses Dokument teilen

Kardinalität, Redundanzen, Anomalien

Oder Link kopieren

INHALT

Abonnieren

×
Cancel