Normalizacja -> proces projektowania relacji, celujący w:
- uniknięcie redundancji w tabelach
- uniknięcie anomalii w trakcie modyfikacji tabeli
- zdefiniowanie encji oraz jej atrybutów
Proces normalizacji wpływa na atrybuty oraz ilość encji
1NF
Encja jest w pierwszej formie normalnej gdy:
- jest już relacją
- klucz główn
y istnieje w tabeli - wszystkie wartości w tabeli są atomowe
Uniknięcie nieatomowych wartości polega na podzielenie listy atrybutów na wiele rekordów, kolumn lub wielu encji.
Spójność referencyjna
Żeby osiągnąć spójność referencyjną trzeba zapewnić, że każda wartość klucza obcego (Klucz obcy) widoczna w danej tabeli istnieje w formie klucza głównego w innej, powiązanej z nią tabeli.
Spójność referencyjna może być narzucona przez DBMS, co nadaje restrykcje na wsadzanie/modyfikację danych w tabeli, np.:
- wsadzenie wartości do tabeli z kluczem obcym, jak nie istnieje taka wartość klucza głównego w powiązanej tabeli nie przejdzie
- usunięcie rekordu z kluczem głównym istniejącym jako klucz obcy w innej tabeli się nie powiedzie
- Modyfikowanie klucza głównego / obcego powodując że stara wartość odnosi się do nieistniejącego rekordu nie przejdzie
JAKAKOLWIEK ZMIANA NARUSZAJĄCA SPÓJNOŚĆ REFERENCYJNĄ NIE JEST DOZWOLONA Z POZIOMU DBMS.
2NF
Encja jest w drugiej formie normalnej gdy:
- Jest w pierwszej formie normalnej
- Gdy każda kolumna nie będąca kluczem głównym zależy od całego klucza głównego

Na co mi to?
Jeśli tylko część kolumn zależy od całego klucza głównego, ta druga część nie zależy od samej encji. Wiele rekordów zawiera wtedy niepotrzebne dane (redundancja) co prowadzi do niespójności. Co jeśli kilka rekordów ma tego samego klienta, a chcemy tylko zmienić adres domowy tego klienta? => wiele rekordów musi być modyfikowanych.
3NF
Encja jest w trzeciej formie normalnej, gdy:
- jest w drugiej formie normalnej
- kolumny nie będące w kluczu są od siebie niezależne

W tym przypadku employee e_mail jest redundantne, tak samo jak w przykładzie z 2NF. Ten sam problem z modyfikacją emaila pracownika.
4NF
Encja jest w czwartej formie normalnej, gdy:
- Jest w 3 formie normalnej
- Nie ma nakładających się Klucze kandydackie (jeśli klucze kandydackie to {A;,B} i {A; C})
- nie ma MVD (multivalued dependency) -> wartość atrybutu A jednoznacznie wyznacza zbiór wartości B i C, ale B i C są niezależne, np.:

Imię jednoznacznie wyznacza Języki oraz Hobby, ale nie są ze sobą powiązane
4nf nie jest zazwyczaj używana przemysłowo, industry standard to 3nf.
