logo

Dritte Normalform (3NF)

Obwohl 2NF-Beziehungen (Second Normal Form) weniger Redundanz aufweisen als 1NF-Beziehungen, können sie dennoch unter Aktualisierungsanomalien leiden. Wenn wir nur ein Tupel aktualisieren und das andere nicht, befindet sich die Datenbank in einem inkonsistenten Zustand. Diese Update-Anomalie wird durch eine transitive Abhängigkeit verursacht. Wir müssen solche Abhängigkeiten beseitigen, indem wir zur dritten Normalform (3NF) übergehen.

stlc

Dritte Normalform (3NF)

Eine Relation liegt in der dritten Normalform vor, wenn keine transitive Abhängigkeit für Nicht-Primärattribute vorliegt, ebenso wie in der zweiten Normalform. Eine Relation ist in 3NF, wenn in jeder nichttrivialen Funktionsabhängigkeit X –> Y mindestens eine der folgenden Bedingungen gilt.

  • X ist ein Superschlüssel.
  • Y ist ein Primattribut (jedes Element von Y ist Teil eines Kandidatenschlüssels).

Mit anderen Worten,



Eine Beziehung, die in erster und zweiter Normalform vorliegt und in der kein Nicht-Primärschlüssel-Attribut transitiv vom Primärschlüssel abhängig ist, liegt in dritter Normalform (3NF) vor.

Notiz:

Wenn A->B Und B->C sind dann zwei FDs A->C heißt transitive Abhängigkeit. Der Normalisierung von 2NF-Beziehungen zu 3NF beinhaltet die Entfernung transitiver Abhängigkeiten. Wenn eine transitive Abhängigkeit besteht, entfernen wir das/die transitiv abhängige(n) Attribut(e) aus der Relation, indem wir das/die Attribut(e) zusammen mit einer Kopie der Determinante in eine neue Relation setzen. Betrachten Sie die unten aufgeführten Beispiele.

Beispiel 1:

In Bezug auf STUDENT in Tabelle 4 angegeben,

Beispiel

FD-Set: {STUD_NO -> STUD_NAME, STUD_NO -> STUD_STATE, STUD_STATE -> STUD_COUNTRY, STUD_NO -> STUD_AGE} Kandidatenschlüssel: {STUD_NO} Für diese Beziehung in Tabelle 4 sind STUD_NO -> STUD_STATE und STUD_STATE -> STUD_COUNTRY wahr. STUD_COUNTRY ist also transitiv von STUD_NO abhängig. Es verletzt die dritte Normalform. Um es in die dritte Normalform umzuwandeln, zerlegen wir die Beziehung STUDENT (STUD_NO, STUD_NAME, STUD_PHONE, STUD_STATE, STUD_COUNTRY_STUD_AGE) wie folgt:

STUDENT (STUD_NO, STUD_NAME, STUD_PHONE, STUD_STATE, STUD_AGE)  STATE_COUNTRY (STATE, COUNTRY)>

Beispiel 2:

Betrachten Sie die Beziehung R(A, B, C, D, E)

A ->BC, CD -> E, B -> D, E -> A>

Alle möglichen Kandidatenschlüssel in der obigen Beziehung sind {A, E, CD, BC}. Alle Attribute befinden sich auf der rechten Seite aller funktionalen Abhängigkeiten und sind Primzahlen.

Notiz:

Es wird die dritte Normalform (3NF) berücksichtigt angemessen für den normalen relationalen Datenbankentwurf, da die meisten 3NF-Tabellen keine Einfüge-, Aktualisierungs- und Löschanomalien aufweisen. Darüber hinaus 3NF stellt immer sicher, dass die Funktionsabhängigkeit erhalten bleibt und verlustfrei ist .

Abschluss

Zusammenfassend lässt sich sagen, dass ein entscheidender Schritt bei der Datenbanknormalisierung die Dritte Normalform (3NF) ist. Es befasst sich mit transitiven Abhängigkeiten und verbessert die Datenintegrität durch eine effektive Informationsorganisation. 3NF stellt sicher, dass Nicht-Schlüsseleigenschaften nur von der abhängig sind Primärschlüssel , Redundanz beseitigen und dazu beitragen, ein gut organisiertes und normalisiertes Umfeld zu schaffen relationales Datenbankmodell .

Wie bekomme ich eine Wildtaube auf Android?