BCNF vs 4NF (4. normalizace)
Normalizace databáze je technika, která se zabývá systémy správy relačních databází. V dobře normalizované databázi se lze vyhnout chybám v datech. Normalizace se používá ke snížení redundance dat v databázi. To znamená implementaci databázových tabulek a jejich vztahů, odstranění redundance a nekonzistentních závislostí. Pro normalizaci jsou nastavena některá předdefinovaná pravidla. Tato pravidla se nazývají normální formy.
- První normální formulář (1NF)
- Druhá normální forma (2NF)
- Třetí normální formulář (3NF)
- Boyce-Codd Normal Form (BCNF nebo 3.5NF)
- Čtvrtý normální formulář (4NF)
První normální forma je označována jako atomicita tabulky. Atomicity stolu lze dosáhnout ve dvou krocích.
- Odstranění duplicitních sloupců ze stejné tabulky.
- Vytváření samostatných tabulek pro související duplicitní sloupce. (musí existovat primární klíče k identifikaci každého řádku této tabulky)
Ve druhé normální formě je pokusem snížit redundantní data v tabulce jejich extrakcí a umístěním do samostatné tabulky. Toho lze dosáhnout provedením následujících kroků.
- Vyberte soubor dat, který se vztahuje na více řádků, a umístěte je do samostatných tabulek.
- Vytvořte vztahy mezi těmito novými tabulkami a nadřazenými tabulkami pomocí cizích klíčů.
Chcete-li převést databázi do třetí normální formy, již databáze musí být dosažena v první a druhé normální formě. Když je databáze v 1NF a 2NF, neexistují žádné duplicitní sloupce ani žádné podmnožiny dat, které by se vztahovaly na více řádků. Třetí normální formy lze dosáhnout odstraněním sloupců tabulek, které nejsou zcela závislé na primárním klíči.
Boyce-Codd Normal Form (BCNF nebo 3.5NF)
BCNF znamená „Boyce-Codd Normal Form“. Tato normální forma známá také jako 3.5 Normální forma normalizace databáze. Pro dosažení BCNF musí být databáze již dosažena do třetí normální formy. Poté by měly být provedeny následující kroky k dosažení BCNF.
- Identifikujte všechny klíče kandidátů ve vztazích
- Identifikujte všechny funkční závislosti ve vztazích.
- Pokud ve vztahu existují funkční závislosti, jejichž determinanty nejsou kandidátskými klíči pro vztah, odstraňte funkční závislosti jejich umístěním do nového vztahu spolu s kopií jejich determinantu.
Čtvrtý normální formulář
Databáze musí být ve třetí normální formě, než se normalizuje na čtvrtou normální formu. Pokud je databáze již ve třetí normální formě, dalším krokem by mělo být odstranění vícehodnotových závislostí. (Pokud jeden nebo více řádků naznačuje přítomnost jednoho nebo více dalších řádků ve stejné tabulce, nazývá se to vícehodnotová závislost.)
Jaký je rozdíl mezi BCNF a 4NF (čtvrtá normální forma)?
• Databáze musí být již dosažena na 3NF, aby ji bylo možné přenést do BCNF, ale databáze musí být ve 3NF a BCNF, aby bylo dosaženo 4NF.
• Ve čtvrté normální formě neexistují žádné vícehodnotové závislosti tabulek, ale v BCNF mohou být v tabulkách data vícehodnotových závislostí.