Normální forma je vlastnost vztahu v relačním datovém modelu , která jej charakterizuje z hlediska redundance, což potenciálně vede k logicky chybným výsledkům vzorkování nebo změny dat. Normální forma je definována jako soubor požadavků, které musí vztah splňovat.
Proces převodu databázových vztahů do formy, která odpovídá normálním formám, se nazývá normalizace . Normalizace má přinést strukturu databáze do podoby, která poskytuje minimální logickou redundanci, a není určena ke snížení nebo zvýšení výkonu nebo snížení či zvýšení fyzického objemu databáze [1] . Konečným cílem normalizace je snížit potenciální nekonzistenci informací uložených v databázi. Jak poznamenal K. Date [2] , obecný účel normalizačního procesu je následující:
Redundance se obvykle eliminuje rozkladem relací tak, že v každé relaci jsou uložena pouze primární fakta (tedy fakta, která nejsou odvozena z jiných uložených faktů).
Zatímco normalizační nápady jsou velmi užitečné pro návrh databáze, v žádném případě nejsou univerzálním nebo vyčerpávajícím prostředkem ke zlepšení kvality návrhu databáze. Je to dáno tím, že ve struktuře databáze je příliš mnoho různých možných chyb a nedostatků, které nelze normalizací odstranit. Navzdory těmto úvahám je teorie normalizace velmi cenným výdobytkem relační teorie a praxe, protože poskytuje vědecky přísná a rozumná kritéria pro kvalitu databázového projektu a formální metody pro zlepšení této kvality. Tímto způsobem teorie normalizace ostře vystupuje na pozadí čistě empirických návrhových přístupů [3] , které jsou nabízeny v jiných datových modelech . Navíc lze tvrdit, že v celé oblasti informačních technologií prakticky neexistují metody hodnocení a zlepšování konstrukčních řešení, které by byly z hlediska úrovně formální náročnosti srovnatelné s teorií normalizace relačních databází.
Normalizace je někdy kritizována na základě toho, že „je to jen zdravý rozum“ a každý kompetentní profesionál „přirozeně“ navrhne plně normalizovanou databázi bez potřeby aplikovat teorii závislostí [4] . Nicméně, jak zdůrazňuje Christopher Date , normalizace jsou přesně principy zdravého rozumu, kterými se zralý designér řídí ve své mysli, to znamená, že principy normalizace jsou formalizovaným zdravým rozumem . Mezitím je identifikace a formalizace principů zdravého rozumu velmi obtížným úkolem a úspěch při jeho řešení je významným úspěchem [4] .
Na vzniku a rozvoji teorie normalizace se podílelo mnoho vědců. E. Codd [4] však navrhl první tři normální formy a koncept funkční závislosti .
Relační proměnná je v první normální formě (1NF) tehdy a jen tehdy , když v jakékoli platné relační hodnotě každá z jejích n-tic obsahuje právě jednu hodnotu pro každý z atributů.
V relačním modelu je vztah vždy v první normální formě, podle definice pojmu vztah . Pokud jde o různé tabulky , nemusí být správnými reprezentacemi vztahů , a proto nemusí být v 1NF.
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ě (funkčně úplný) závislý na svém kandidátském klíči. Funkčně úplná závislost znamená, že pokud je kandidátský klíč složený, pak atribut závisí na celém klíči a nezávisí na jeho částech.
Relační proměnná je ve třetí normální formě právě tehdy, když je ve druhé normální formě a neexistují žádné tranzitivní funkční závislosti neklíčových atributů na klíčových atributech.
Relační proměnná je v Boyce-Coddově normální formě (jinými slovy v silné třetí normální formě) tehdy a jen tehdy, když každá z jejích netriviálních a vlevo neredukovatelných funkčních závislostí má jako svůj determinant nějaký potenciální klíč .
Relační proměnná je ve čtvrté normální formě, pokud je v Boyce-Coddově normální formě a neobsahuje netriviální vícehodnotové závislosti .
Relační proměnná je v páté normální formě (jinými slovy v projektivně-konektivním normálním tvaru) právě tehdy, když je každá netriviální závislost spojení v ní určena potenciálním klíčem (klíči) této relace.
Relační proměnná je v DKNF právě tehdy, když každé omezení na ni uložené je logickým důsledkem omezení domény a klíčových omezení uložených na relační proměnnou.
Relační proměnná je v šesté normální formě právě tehdy, když splňuje všechny netriviální závislosti spojení. Z definice vyplývá, že proměnná je v 6NF právě tehdy, když je ireducibilní, to znamená, že ji nelze beze ztrát dále rozložit. Každá relační proměnná, která je v 6NF, je také v 5NF.
Zavedl K. Date ve své knize [2] jako zobecnění páté normální formy pro chronologickou databázi .
normální formy | |
---|---|
Databáze | |
---|---|
Koncepty |
|
Objekty |
|
Klíče | |
SQL | |
Komponenty |