Ziel bei der Modellierung im ER-Modell und der anschließenden Transformation ins R-Modell ist die Vermeidung von Datenredundanz. darüber hinaus sollen einige Probleme mit der Datenkonsistenz vermieden werden, die bei solch redundanten Tabellen auftreten. Hier nochmals ein Teil der Schuldatenbank mit einer einzigen Tabelle realisiert: Man unterscheidet drei Anomalien: ^Schüler-Nr.^Schüler-name^Schüler-vorname^Tutor^Lehrer-Nr.^Lehrer-name^Lehrer-vorname^Kurs-Nr.^Kurs-thema^ Note^ |1000 |Müller |Dieter |421 |442 |Zeisig |Isidor |11 |Mechanik |9| |1001 |Meier |Albert |442 |442 |Zeisig |Isidor |11 |Mechanik |11| |1002 |Schulze|Frieda |421 |442 |Zeisig |Isidor |11 |Mechanik |12| |1002 |Schulze|Frieda |421 |421 |Fink |Griselda|7 |Prolog |7| |1000 |Müller |Dieter |421 |421 |Fink |Griselda|7 |Prolog |5| |1001 |Meier |Albert |442 |433 |Meise |Martha |9 |Evolution |10| (1) Änderungsanomalie: Beim Ändern eines bestehenden Eintrags werden Dateninkon-sistenzen geschaffen. Wird z.B. der Mechanikkurs mit der Kursnummer 11 statt von Lehrer Zeisig von Lehrer Vogel übernommen, so muss das in allen Dateneinträgen, die die diesen Kurs betreffen geändert werden. Wird dies z.B. beim Schüler 1002 vergessen, entsteht ein Widerspruch. (2) Einfügeanomalie: Durch Aufnahme eines neuen Entities entstehen Widersprüche. Schüler 1004 möchte in den Mechanikkurs wechseln. Beim Eintragen wird aber versehentlich für den Mechanikkurs die falsche Kursnummer 9 angegeben. (3) Löschanomalie: Beim Löschen eines Eintrages werden auch Informationen mitgelöscht, die noch benötigt werden. Gibt z.B. Lehrerin Fink im nächsten Jahr nur noch Unterricht in der Mittelstufe, taucht sie in der Tabelle nicht mehr auf, d.h. alle ihre Daten, wie Name und Vorname sind verschwunden. Bleibt sie Tutor des Schülers 1000 (was zumindest früher durchaus vorkam, dass ein Lehrer Tutor war, der den Schüler selbst nicht unterrichtete), dann lässt sich für die dem Schüler zugeordnete Tutor-Nr. 421 kein Lehrername festmachen.