Änderungsanomalie

Änderungsanomalie

In der Informatik bezeichnen Anomalien in relationalen Datenbanken Fehlverhalten der Datenbank. Sie entstehen durch nicht regelkonforme Datenstrukturen, die von der Verletzung von Normalisierungsregeln herrühren und führen zu fehlerhaften bzw. fehlenden Datenbeständen und/oder Inkonsistenzen. Im einzelnen unterscheidet man Einfüge-Anomalie, Änderungs-Anomalie und Lösch-Anomalie.

Inhaltsverzeichnis

Einfüge-Anomalie (Insert Anomalie)

Beim Einfügen von Daten in eine Datenbank spricht man von einer Einfüge-Anomalie (Insertion-Anomalie), wenn eine neue Entität eines Entitätstyps in die Datenbank nicht oder nur schwierig eingetragen werden kann, weil nicht zu allen Schlüssel-Attributen Werte vorliegen. So können beispielsweise Informationen nicht aufgenommen werden, da andere, zu diesem Zusammenhang (noch) uninteressante Angaben, fehlen.

Beispiel:

In dieser Tabelle wird für Fahrzeuge der jeweilige Fahrer angegeben. Die Attribute (Kennzeichen, Nachname) seien Identifikationsschlüssel. Hier treten Einfügeanomalien auf, wenn mehrere Fahrer mit gleichem Nachnamen das gleiche Fahrzeug fahren, oder für mehrere Fahrzeuge noch kein Fahrer bestimmt wurde.
Das Einfügen von Datensätzen mit gleichen Schlüsseln in eine Datenbank ist schwierig oder unmöglich.

Kennzeichen Modell Vorname Nachname
K-KJ 321 VW Peter Schmidt
H-CH 333 Audi Fritz Schneider
B-MD 321 BMW Max Maier
B-MD 321 BMW 6er Tom Müller
A-BC 123 Blau  ?  ?
A-BC 123 Blau  ?  ?

Änderungs-Anomalie (Update Anomalie)

Beim Ändern von Daten in einer Datenbank spricht man von einer Änderungs-Anomalie (Update-Anomalie), wenn nicht alle (redundanten) Vorkommen einer Entität zugleich geändert werden. Dieses kann zu inkonsistenten Daten führen.

Beispiel:

Kennzeichen Hersteller Farbe Vorname Nachname
K-KJ 321 VW Blau Peter Schmidt
H-CH 333 Opel Rot Fritz Schneider
B-MD 321 BMW Schwarz Max Maier
B-MM 473 Peugeot Grün Max Maier

Wird in dieser Tabelle der Name „Maier“ in „Meier“ geändert, muss dieses an zwei Stellen geschehen. Geschieht dieses nicht, spricht man von einer Update-Anomalie. Die Tabelle enthält nun inkonsistente Daten.

Um dieses Problem zu verhindern, sollte die Tabelle in die 2. Normalform überführt werden, um die Fahrerdaten losgelöst von den Fahrzeugdaten betrachten zu können.

Beispiel in 2. Normalform:

Fahrzeug
Kennzeichen Hersteller Farbe Fahrer_ID
K-KJ 321 VW Blau 318
H-CH 333 Opel Rot 37
B-MD 321 BMW Schwarz 93
B-MM 473 Peugeot Grün 93
Fahrer
Fahrer_ID Vorname Nachname
318 Peter Schmidt
37 Fritz Schneider
93 Max Maier

Weil Fahrer_ID in der Tabelle "Fahrzeug" als Fremdschlüssel aus der Tabelle "Fahrer" eingesetzt wird, tritt die Update-Anomalie nicht mehr auf. Die Daten werden nun an zentraler Stelle und nicht mehr redundant abgelegt.

Lösch-Anomalie (Delete Anomalie)

Eine Lösch-Anomalie (Delete-Anomalie) entsteht, wenn durch das Löschen eines Datensatzes mehr Informationen als erwünscht verloren gehen. Sie entsteht, wenn ein Datensatz mehrere unabhängige Informationen enthält. Durch das Löschen der einen Information wird dann auch die andere gelöscht, obwohl diese noch benötigt wird.

Beispiel:

Kennzeichen Hersteller Farbe Vorname Nachname
K-KJ 321 VW Blau Peter Schmidt
H-CH 333 Opel Rot Fritz Schneider
B-MD 321 BMW Schwarz Max Maier

Hier kann das Fahrzeug B-MD 321 nicht gelöscht werden, ohne den Fahrer ebenfalls zu löschen.

Um das Problem zu vermeiden, muss die Tabelle in die 2. Normalform überführt werden.

Beispiel in 2. Normalform:

Fahrzeug
Kennzeichen Hersteller Farbe Fahrer_ID
K-KJ 321 VW Blau 318
H-CH 333 Opel Rot 37
B-MD 321 BMW Schwarz 93
Fahrer
Fahrer_ID Vorname Nachname
318 Peter Schmidt
37 Fritz Schneider
93 Max Maier

Siehe auch


Wikimedia Foundation.

Игры ⚽ Нужен реферат?

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”