Rozdiel medzi 1NF a 2NF a 3NF

Rozdiel medzi 1NF a 2NF a 3NF
Rozdiel medzi 1NF a 2NF a 3NF

Video: Rozdiel medzi 1NF a 2NF a 3NF

Video: Rozdiel medzi 1NF a 2NF a 3NF
Video: Rozdíl mezi HDD a SSD. Co musíte vědět 2024, November
Anonim

1NF vs 2NF vs 3NF

Normalizácia je proces, ktorý sa vykonáva s cieľom minimalizovať redundancie, ktoré sú prítomné v údajoch v relačných databázach. Tento proces rozdelí hlavne veľké tabuľky na menšie tabuľky s menším počtom prebytočných miest. Tieto menšie tabuľky budú navzájom prepojené prostredníctvom dobre definovaných vzťahov. V dobre normalizovanej databáze bude akákoľvek zmena alebo úprava údajov vyžadovať úpravu iba jednej tabuľky. Prvá normálna forma (1NF), Druhá normálna forma (2NF) a Tretia normálna forma (3NF) zaviedol Edgar F. Codd, ktorý je tiež vynálezcom relačného modelu a konceptu normalizácie.

Čo je 1NF?

1NF je prvá normálna forma, ktorá poskytuje minimálny súbor požiadaviek na normalizáciu relačnej databázy. Tabuľka, ktorá je v súlade s 1NF, zaisťuje, že skutočne predstavuje vzťah (t. j. neobsahuje žiadne opakujúce sa záznamy), ale neexistuje žiadna všeobecne akceptovaná definícia 1NF. Jednou z dôležitých vlastností je, že tabuľka, ktorá je v súlade s 1NF, nemôže obsahovať žiadne atribúty, ktoré sú relačné (t. j. všetky atribúty by mali mať atómové hodnoty).

Čo je 2NF?

2NF je druhá normálna forma používaná v relačných databázach. Aby bola tabuľka v súlade s 2NF, mala by byť v súlade s 1NF a každý atribút, ktorý nie je súčasťou žiadneho kandidátskeho kľúča (t. j. atribúty, ktoré nie sú prvočísla), by mal plne závisieť od ktoréhokoľvek z kandidátskych kľúčov v tabuľke.

Čo je 3NF?

3NF je tretia normálna forma používaná pri normalizácii relačnej databázy. Podľa Coddovej definície sa tabuľka považuje za 3NF, vtedy a len vtedy, ak je táto tabuľka v druhej normálnej forme (2NF) a každý atribút v tabuľke, ktorý nepatrí do kandidátskeho kľúča, by mal priamo závisieť na každom kandidátskom kľúči tejto tabuľky. V roku 1982 Carlo Zaniolo vytvoril odlišne vyjadrenú definíciu 3NF. Tabuľky, ktoré sú v súlade s 3NF, vo všeobecnosti neobsahujú anomálie, ktoré sa vyskytujú pri vkladaní, odstraňovaní alebo aktualizácii záznamov v tabuľke.

Aký je rozdiel medzi 1NF a 2NF a 3NF?

1NF, 2NF a 3NF sú normálne formy, ktoré sa používajú v relačných databázach na minimalizáciu redundancií v tabuľkách. 3NF sa považuje za silnejšiu normálnu formu ako 2NF a považuje sa za silnejšiu normálnu formu ako 1NF. Preto vo všeobecnosti získanie tabuľky, ktorá vyhovuje formuláru 3NF, bude vyžadovať rozloženie tabuľky, ktorá je v 2NF. Podobne získanie tabuľky, ktorá je v súlade s 2NF, bude vyžadovať rozloženie tabuľky, ktorá je v 1NF. Ak však tabuľka, ktorá je v súlade s 1NF, obsahuje kandidátske kľúče, ktoré sa skladajú iba z jedného atribútu (t. j. nezložené kandidátske kľúče), takáto tabuľka by automaticky vyhovovala 2NF. Dekompozícia tabuliek bude mať za následok ďalšie operácie spojenia (alebo karteziánske produkty) pri vykonávaní dotazov. Tým sa zvýši výpočtový čas. Na druhej strane tabuľky, ktoré vyhovujú silnejším normálnym formám, budú mať menej redundancií ako tabuľky, ktoré vyhovujú iba slabším normálnym formám.

Odporúča: