1. Normálforma (1NF):

Minden sor minden komponense atomi értékű legyen.

2. Normálforma (2NF):

Megengedjük a tranzitív függősé­geket 1 relációban, de megtiltjuk azokat a nem triviális függőségeket, amelyeknek bal oldala 1 kulcs valódi részhalmaza.

3. Normálforma (3NF):

A BCNF enyhébb alakja, amelyben előfordulhatnak olyan X→A funkcio­nális függőségek, ahol ha az X nem szuperkulcs, akkor az A valamely kulcsnak eleme.

BCNF (Boyce-Codd normálforma):

Anomáliák megszüntetésére használjuk. Az R reláció BCNF-ben van akkor és csak akkor, ha minden olyan esetben, ha az R-ben érvényes egy A1A2...An→B „nem triviális” függőség, akkor az {A1,A2,...,An} halmaz R szuperkulcsa kell, hogy legyen.
Azaz minden „nem triviális” funkcionális függőség bal oldalának szuperkulcsnak kell lennie. A szuperkulcsnak nem kell minimálisnak lennie. Emiatt a BCNF feltétel egy ekvivalens megfo­galmazása az, hogy minden „nem triviális” funkcionális függőség bal oldalának tartalmaznia kell egy kulcsot.

4. Normálforma (4NF):

Egy R reláció negyedik normálformában van, ha valahányszor az A1A2...An →→ B1B2...Bm „nem triviális” többértékű függőség fennáll, akkor az {A1, A2..., An} szuperkulcs. Azaz, ha egy reláció 4NF-ben van, akkor minden nem triviális többértékű függőség valójában olyan funkcionális függőség, amelynek a baloldala szuperkulcs.

Kapcsolatok: 4 NF -ből következik a BCNF, amiből következik 3 NF.


Normalizálás:

A helyes modell megtervezésére irányuló irányelveket, ennek módszertana. A normalizálás során induláskor egyetlen táblázatot alakítunk ki, melyben elhelyezzük a szükséges tulajdonságokat. Ezután feltárjuk a táblázat belső szerkezetét, a tulajdonságok közötti összefüggé­seket, függőségi viszonyokat; lényegében azt vizsgáljuk meg, hogy a feltárt függőségek eleget tesznek-e az ún. normál formáknak nevezett követelményeknek. A normál formákat megsértő függőségeket megszüntetjük úgy, hogy a táblázatot meghatározott szabályok szerint további táblázatokra bontjuk. A kapott új táblázatok normálformáknak való megfelelésének ellenőrzését is elvégezzük és, ha szükséges, azokat is további táblázatokra bontjuk.
A normalizálás tehát táblázat szétbontó relációs műveletek sorozata. Melynek eredményeképpen egymással kapcsolatban álló, az eredetinél kisebb tárolási igényű relációkat kapunk; egy tervezési metodika, ami segítséget nyújt a logikailag áttekinthetőbb anomáliáktól mentes relációs sémák és adatbázis sémák kialakításában.
A normalizálás eredményét 4 lépésben érhetjük el:

  1. Első lépés: létrehozzuk az első normál formát (1NF).
    A táblázat első normál formájának szempontjai:
    • az oszlopok száma és sorrendje
    • minden oszlop csak meghatározott értékeket vehet fel (domain)
    • minden attribútum csak egyetlen értéket vehet fel a megengedett tartományból.
    Minden sorhoz egy egyedi kulcs tartozik(nincs két egyforma kulcs).
  2. Második lépés: az összetevők száma nem csökkenthető, vagyis a kulcs minimális. A kulcs minimális esetén a teljes függés ugyanaz, mint a funkcionális függés. Jelölése: 2NF
  3. Harmadik lépés: funkcionális függés csak az elsődleges kulcsból indul ki és ez a függés teljes, hiszen az összetett kulcs komponensein kívül nincs más attribútum. Jelölése: 3NF.
  4. Negyedik lépés: egy reláció akkor 4NF ha a 3NF és legfeljebb egy többértékű függés van benne.