Druhá normální forma ( anglicky Second normal form ; zkráceně 2NF ) je jednou z možných normálních forem vztahu v relační databázi .
Relační proměnná je ve druhé normální formě právě tehdy, když je v první normální formě a každý neklíčový atribut je neredukovatelně závislý na (každém) svém kandidátském klíči [1] .
Neredukovatelnost znamená, že potenciální klíč neobsahuje menší podmnožinu atributů, z nichž lze tuto funkční závislost také odvodit [1] . Pro neredukovatelnou funkční závislost se často používá ekvivalentní koncept „plné funkční závislosti“ [1] .
Pokud je kandidátský klíč jednoduchý, to znamená, že se skládá z jediného atributu, je jakákoliv funkční závislost na něm neredukovatelná (úplná). Pokud je kandidátním klíčem složený klíč, pak podle definice druhé normální formy nesmí být ve vztahu žádné neklíčové atributy, které závisí na části složeného kandidátského klíče.
Příklad převodu vztahu do druhé normální formy
Nechť dvojice atributů { Pobočka společnosti , Pozice } tvoří primární klíč v následujícím vztahu:
Pobočka společnosti | Pracovní pozice | Plat | Dostupnost počítače |
---|---|---|---|
Pobočka v Tomsku | Čistič | 20 000 | Ne |
Pobočka v Moskvě | Programátor | 40 000 | Tady je |
Pobočka v Tomsku | Programátor | 25 000 | Tady je |
Řekněme, že mzda závisí na oboru a pozici a dostupnost počítače závisí pouze na pozici.
Existuje funkční závislost Pozice → Mít počítač , ve které je levá strana (determinant) pouze částí primárního klíče, což porušuje podmínku druhé normální formy.
Pro snížení na 2NF by měl být původní vztah rozložen na dva vztahy:
Pobočka společnosti | Pracovní pozice | Plat |
---|---|---|
Pobočka v Tomsku | Čistič | 20 000 |
Pobočka v Tomsku | Programátor | 25 000 |
Pobočka v Moskvě | Programátor | 40 000 |
Pracovní pozice | Dostupnost počítače |
---|---|
Čistič | Ne |
Programátor | Tady je |
V Rusku
Přenosný
V angličtině
normální formy | |
---|---|