1NF vs 2NF vs 3NF
Normalisierung ist ein Prozess, der ausgeführt wird, um die Redundanzen zu minimieren, die in relationalen Datenbanken vorhanden sind. Dieser Prozess unterteilt hauptsächlich große Tabellen in kleinere Tabellen mit weniger Redundanzen. Diese kleineren Tabellen werden durch genau definierte Beziehungen miteinander verknüpft. In einer gut normalisierten Datenbank müssen für Änderungen oder Datenänderungen nur eine einzige Tabelle geändert werden. Die erste Normalform (1NF), die zweite Normalform (2NF) und die dritte Normalform (3NF) wurden von Edgar F. Codd eingeführt, der auch der Erfinder des Beziehungsmodells und des Konzepts der Normalisierung ist.
Was ist 1NF??
1NF ist die erste Normalform, die die Mindestanforderungen für die Normalisierung einer relationalen Datenbank enthält. Eine Tabelle, die 1NF erfüllt, stellt sicher, dass sie tatsächlich eine Relation darstellt (d. H. Sie enthält keine Datensätze, die sich wiederholen), es gibt jedoch keine allgemein akzeptierte Definition für 1NF. Eine wichtige Eigenschaft ist, dass eine Tabelle, die 1NF erfüllt, keine Attribute enthalten kann, die einen relationalen Wert haben (d. H. Alle Attribute sollten atomare Werte haben)..
Was ist 2NF??
2NF ist die zweite Normalform, die in relationalen Datenbanken verwendet wird. Damit eine Tabelle 2NF erfüllt, sollte 1NF eingehalten werden, und jedes Attribut, das nicht Teil eines Kandidatenschlüssels ist (d. H. Nicht-Primattribute), sollte vollständig von den Kandidatenschlüsseln in der Tabelle abhängen.
Was ist 3NF??
3NF ist die dritte Normalform, die bei der relationalen Datenbanknormalisierung verwendet wird. Gemäß der Definition von Codd wird gesagt, dass sich eine Tabelle in 3NF befindet, wenn und nur dann, wenn diese Tabelle in der zweiten Normalform (2NF) vorliegt und jedes Attribut in der Tabelle, das nicht zu einem Kandidatenschlüssel gehört, direkt abhängig sein sollte bei jedem Kandidatenschlüssel dieser Tabelle. Im Jahr 1982 erstellte Carlo Zaniolo eine anders ausgedrückte Definition für 3NF. Tabellen, die der 3NF entsprechen, enthalten im Allgemeinen keine Anomalien, die beim Einfügen, Löschen oder Aktualisieren von Datensätzen in der Tabelle auftreten.
Was ist der Unterschied zwischen 1NF und 2NF und 3NF?
1NF, 2NF und 3NF sind Normalformen, die in relationalen Datenbanken verwendet werden, um Redundanzen in Tabellen zu minimieren. 3NF wird als stärkere Normalform als die 2NF betrachtet und als stärkere Normalform als 1NF. Um eine Tabelle zu erhalten, die dem 3NF-Formular entspricht, ist es daher im Allgemeinen erforderlich, eine Tabelle zu zerlegen, die sich im 2NF befindet. Um eine Tabelle zu erhalten, die der 2NF entspricht, müssen Sie eine Tabelle in der 1NF zerlegen. Wenn jedoch eine Tabelle, die 1NF entspricht, Kandidatenschlüssel enthält, die nur aus einem einzigen Attribut bestehen (d. H. Nicht zusammengesetzte Kandidatenschlüssel), würde eine solche Tabelle automatisch 2NF entsprechen. Bei der Dekomposition von Tabellen werden beim Ausführen von Abfragen zusätzliche Join-Vorgänge (oder kartesische Produkte) ausgeführt. Dies erhöht die Rechenzeit. Auf der anderen Seite hätten Tabellen, die stärkeren Normalformen entsprechen, weniger Redundanzen als Tabellen, die nur schwächeren Normalformen entsprechen.