Normalizacja
Zapewnienie, że każda informacja jest reprezentowana w modelu encji tylko raz
0PN - zerowa postać normalna
Każda encja musi mieć zbiór atrybutów (związków),
które w sposób unikalny określającej wystąpienie.
0PN - przykład
WNIOSKODAWCA
# NIP
* Data złożenia wniosku * Treść wniosku
* Kod typu wniosku
* Opis typu wniosku
* Nazwisko
* Pierwsze imię
* Imię ojca
* Kod grupy uposażenia * Stawka wg grupy
o Opis grupy uposażenia
0PN - przykład, c.d.
Atrybuty wielowartościowe
1PN - pierwsza postać normalna
Każdy atrybut musi mieć jedną wartość dla każdego wystąpienia jego encji w danym momencie czasu
Przejście z postaci 0PN do lPN:
· usunięcie wielowartościowych atrybutów z encji w 0PN i utworzenie dla niej nowej encji
· skopiowanie unikalnego identyfikatora do nowej encji - będzie on prawdopodobnie stanowił część identyfikatora unikalnego dla tej nowej encji
1PN - przykład
WNIOSEK
#@NIP
# Kod typu wniosku
@ - stanowi realizację związku
2PN - druga postać normalna
Wartość każdego atrybutu musi zależeć od całego identyfikatora jego encji
Przejście z postaci lPN do 2PN:
· . usunięcie wszystkich częściowo zależnych atrybutów i utworzenie dla nich nowej encji
· skopiowanie części identyfikatora z encji pierwotnej (od której zależne są usunięte atrybuty) do tej nowej encji
# @ Kod typu wniosku
TYP WNIOSKU
# Kod typu wniosku * Opis typu wniosku
3PN - trzecia postać normalna
Wartość każdego atrybutu nie może zależeć od niczego innego poza identyfikatorem unikalnym
Przejście z postaci 2PN do 3PN:
należy usunąć atrybuty niezależne i wstawić je do
nowej encji
Uwaga:
ta nowa encja potrzebuje identyfikatora unikalnego
@ Kod grupy uposażenia
GRUPA
# Kod grupy uposażenia * Stawka wg grupy
Równoważny model encji
n
1
------
WNIOSKODA WCA
* Pierwsze imię * Imię ojca
# Kod grupy uposażenia
* Stawka wg grupy
moloniewicz