Rouven: Wozu die Normalform [1.|2.|3.] (NF)

Beitrag lesen

Hello,

in Ergänzung zu Sven gebe ich dir noch ein weiteres Beispiel. Er zeigt dir die Analysevorgänge, ich zeige dir die Konsistenzprobleme, die sich in der Datenbanktheorie als Menge von Anomalien etabliert haben.
Nimm folgendes Beispiel: Du bist ein Händler und beziehst Produkte von verschiedenen Lieferanten. Diese verwaltest du in einer einzigen Tabelle:
Produktname|Preis|Lagerbestand|...|Lieferantname|Adresse|TelNr
Eines schönen Tages sitzt du am Rechner, blätterst gerade in deiner Produktliste, da fällt dir ein Liefant ins Auge und du denkst dir "da war doch was, der hatte mir doch geschrieben er hat eine neue Telefonnummer". Na gut, alles kein Problem, du schaust in dein Postfach findest die E-Mail, änderst die Telefonnummer und der Fall ist erledigt. Oder nicht? Nein, ist er nicht, denn beziehst du von diesem Lieferanten noch ein weiteres Produkt, hast du nun zwei verschiedene Kontaktinformationen zum selben Lieferanten - welche ist aktuell? wie stellst du sicher, dass nur diese verwendet wird? Alles Fragen von Dateninkonsistenz, die sich in diesem Fall aus der Redundanzspeicherung ergibt. Normalisiert wäre sowas nicht passiert...

Und was die Performance angeht: Leg halt hinterher einen View drüber - die Datenbank übernimmt die Verantwortung diesen View aktuell zu erhalten, dein Select sieht wieder aus wie eine Tabelle, die darunterliegenden Daten bleiben sauber.

MfG
Rouven

--
-------------------
Inter Arma Enim Silent Leges  --  Cicero