logo

Trzecia postać normalna (3NF)

Chociaż relacje drugiej postaci normalnej (2NF) mają mniejszą redundancję niż relacje w 1NF, nadal mogą występować anomalie związane z aktualizacją. Jeśli zaktualizujemy tylko jedną krotkę, a drugiej nie, baza danych będzie w stanie niespójnym. Ta anomalia aktualizacji jest spowodowana zależnością przechodnią. Musimy usunąć takie zależności, przechodząc do trzeciej postaci normalnej (3NF).

przykład mapy Java

Trzecia postać normalna (3NF)

Relacja jest w trzeciej postaci normalnej, jeśli nie ma zależności przechodniej dla atrybutów innych niż pierwsze, a także w drugiej postaci normalnej. Relacja jest w 3NF, jeśli w każdej nietrywialnej zależności funkcji X –> Y zachodzi co najmniej jeden z poniższych warunków.

  • X to super klucz.
  • Y jest atrybutem głównym (każdy element Y jest częścią jakiegoś klucza kandydującego).

Innymi słowy,



Relacja będąca w pierwszej i drugiej postaci normalnej i w której żaden atrybut inny niż klucz podstawowy nie jest przechodnio zależny od klucza podstawowego, ma wówczas trzecią postać normalną (3NF).

Notatka:

Jeśli A->B I B->C to w takim razie dwa FD A->C nazywa się zależnością przechodnią. The normalizacja relacji 2NF do 3NF polega na usunięciu zależności przechodnich. Jeśli istnieje zależność przechodnia, usuwamy atrybut(y) zależny(e) przechodnio z relacji poprzez umieszczenie atrybutu(ów) w nowej relacji wraz z kopią wyznacznika. Rozważ przykłady podane poniżej.

Przykład 1:

W relacji STUDENT podanej w Tabeli 4,

Przykład

wartość logiczna na ciąg Java

Zestaw FD: {STUD_NO -> STUD_NAME, STUD_NO -> STUD_STATE, STUD_STATE -> STUD_COUNTRY, STUD_NO -> STUD_AGE} Klucz kandydata: {STUD_NO} Dla tej relacji w tabeli 4, STUD_NO -> STUD_STATE i STUD_STATE -> STUD_COUNTRY są prawdziwe. Zatem STUD_COUNTRY jest przejściowo zależne od STUD_NO. Narusza to trzecią formę normalną. Aby przekonwertować go do trzeciej postaci normalnej, rozłożymy relację STUDENT (STUD_NO, STUD_NAME, STUD_PHONE, STUD_STATE, STUD_COUNTRY_STUD_AGE) jako:

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

Przykład 2:

Rozważ relację R(A, B, C, D, E)

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

Wszystkie możliwe klucze kandydujące w powyższej relacji to {A, E, CD, BC}. Wszystkie atrybuty znajdują się po prawej stronie, wszystkie zależności funkcjonalne są liczbami pierwszymi.

Notatka:

Rozważana jest trzecia postać normalna (3NF). odpowiedni dla normalnego projektu relacyjnej bazy danych, ponieważ większość tabel 3NF jest wolna od anomalii wstawiania, aktualizacji i usuwania. Co więcej, 3NF zawsze zapewnia zachowanie zależności funkcjonalnych i bezstratność .

Wniosek

Podsumowując, kluczowym etapem normalizacji bazy danych jest Trzecia Forma Normalna (3NF). Zajmuje się zależnościami przechodnimi i poprawia integralność danych poprzez efektywną organizację informacji. 3NF zapewnia, że ​​właściwości niekluczowe zależą tylko od główny klucz , usuwając nadmiarowość i pomagając stworzyć dobrze zorganizowane i znormalizowane relacyjny model bazy danych .