47
PODSTAWY BAZ DANYCH
3NF |
BCNF |
Relacja R jest w 3NF, gdy dla każdej nietrywialnej zależności funkcyjnej (A—► B) odpowiadającej relacji R przynajmniej jeden z przedstawionych warunków jest spełniony: 1) Atrybut A jest superkluczem relacji R LUB 2) B jest kluczowym atrybutem relacji R lub częścią superklucza. |
Relacja R znajduje się w BCNF, gdy dla każdej zależności funkcyjnej (A -► B) odpowiadającej relacji R: A jest superkluczem R. |
Różnica daje się zaobserwować, gdy użyjemy wielu nakładających się kluczy kandydujących.
Gdy dysponujemy tabelą o atrybutach: A, B, C, D:
iKSBSS < |
.....B j ;C 1.......D j |
__:,M j | |
. 1 • 1 J |
szukamy kluczy kandydujących.
Jeśli klucz kandydujący jest tylko jeden i są nim kolumny AB (klucz złożony) oraz jeśli istnieje zależność AB -*■ CD, wówczas tabela jest w postaci normalnej BCNF. Wiemy też, że relacja ta spełnia pierwszy warunek 3NF (atrybut AB jest superkluczem) i tym samym automatycznie spełnia założenia 3NF. Zatem każda relacja spełniająca BCNF będzie spełniała (automatycznie) wymogi 3NF. Różnica polega na tym że nie każda relacja będąca w 3NF spełnia założenie BCNF. Prześledźmy to na przykładzie.
Użyjemy nadal relacji ABCD. Jeśli istnieją w niej zależności funkcyjne ABC -* D oraz D -► A, wówczas mamy następujące klucze kandydujące: ABC oraz BCD. Zależności funkcyjne występujące w relacji to ABC -*■ D oraz D -*■ A. Jak łatwo można zauważyć, D nie jest kluczem kandydującym, ale A jest częścią klucza, dlatego relacja spełnia założenia 3NF, ale nie BCNF.
Kolejne postacie normalne od INF do 6NF są próbami poszukiwania reguły, która zagwarantuje pozbycie się redundancji oraz anomalii z tabel relacyjnej bazy danych.
Po wprowadzeniu postaci normalnej Boyce’a-Codda okazało się, że istnieją przypadki, które sprawiają, że w bazie danych zdarzają się redundancje, nawet w BCNF (co mogło skutkować anomaliami podczas aktualizacji). Stwierdzenie to przedstawił Ronald Fagin w 1977 roku. Postać normalną silniejszą od BCNF nazwano czwartą postacią normalną. Ponieważ powtarzające się dane w BCNF były związane z występowaniem zależności wie-lowartościowych (MVD) w obrębie jednej relacji, R. Fagin zaproponował, aby umieścić zależne atrybuty w nowej tabeli razem z kopią ich wyznacznika.
Piąta postać normalna to relacja niezawierająca zależności złączeniowych. Ze względu na to 5NF nazywana bywa postacią normalną rzutu-złączenia. Relacja, która występuje w piątej postaci normalnej, jest wolna od zależności złączeniowych.