Domov vývoj Čo je tretia normálna forma (3nf)? - definícia z technológie

Čo je tretia normálna forma (3nf)? - definícia z technológie

Obsah:

Anonim

Definícia - Čo znamená tretia normálna forma (3NF)?

Tretia normálna forma (3NF) je tretím krokom v normalizácii databázy a vychádza z prvej a druhej normálnej formy 1NF a 2NF.

3NF uvádza, že by sa mali odstrániť všetky odkazy na stĺpce v referenčných údajoch, ktoré nezávisia od primárneho kľúča. Iným spôsobom je to, že na odkazovanie na inú tabuľku by sa mali použiť iba stĺpce cudzích kľúčov a v odkazovanej tabuľke by nemali existovať žiadne ďalšie stĺpce z nadradenej tabuľky.

Techopedia vysvetľuje tretí normálny formulár (3NF)

Zvážte databázu banky, ktorá obsahuje dve tabuľky: CUSTOMER_MASTER na ukladanie detailov o zákazníkoch, a ACCOUNT_MASTER na ukladanie detailov o bankových účtoch vrátane toho, ktorý zákazník vlastní daný účet. V takom prípade musí existovať spôsob, ako prepojiť tieto dve tabuľky, aby bolo možné prepojiť účet so zákazníkom, ktorý ho vlastní. Spôsob, ako to dosiahnuť, je pomocou cudzieho kľúča. Toto je stĺpec v tabuľke ACCOUNT_MASTER, ktorý odkazuje na príslušný stĺpec (nazývaný primárny kľúč) alebo odkazuje naň v rodičovskej tabuľke CUSTOMER_MASTER. Tento stĺpec sa nazýva CustID.

Predpokladajme, že zákazník Andrew Smith vytvorí účet v tabuľke CUSTOMER_MASTER s CustID 20454. Pán Smith má sporiaci účet s číslom S-200802-005, ktorého podrobnosti sú uložené v tabuľke ACCOUNT_MASTER. To znamená, že tabuľka ACCOUNT_MASTER bude obsahovať stĺpec s názvom CustID, ktorý nie je originálnym údajom. Namiesto toho má tiež hodnotu 20454, ktorá jednoducho odkazuje na rovnaké CustID v tabuľke CUSTOMER_MASTER.

Teraz spoločnosť 3NF diktuje, že v našej tabuľke ACCOUNT_MASTER by jediné informácie, ktoré máme o zákazníkovi, mali byť CustID (20454) ako cudzí kľúč a označuje a identifikuje zákazníka, ktorý vlastní rovnaké CustID v tabuľke CUSTOMER_MASTER (Andrew Smith) ). V tabuľke ACCOUNT_MASTER alebo v žiadnej inej tabuľke by sa nemali ukladať žiadne ďalšie údaje o našich zákazníkoch (napríklad meno, dátum narodenia, pohlavie atď.), Pretože všetky tieto údaje o ňom sú už uložené v CUSTOMER_MASTER. Týmto spôsobom sú jediným zákazníckym údajom uloženým mimo tabuľky CUSTOMER_MASTER CustID. To platí pekné dividendy tým, že zaisťuje, že nedochádza k duplikácii údajov, čo zase zvyšuje efektivitu dopytov a znižuje množstvo potrebného ukladacieho priestoru.

Čo je tretia normálna forma (3nf)? - definícia z technológie