Az interjú során néhány interjúztató megkérdezi az adatbázis-paradigmát, én már tanulmányoztam az adatbázisokat egyetemen, de nem hallottam erről, vagy a tanár említette, és nem figyeltem rá?
Jelenleg hat paradigma található a relációs adatbázisokban: az első (1NF), a második (2NF), a harmadik (3NF), a Bass-Cod paradigma (BCNF), a negyedik (4NF) és az ötödik (5NF, más néven a tökéletes paradigma).
Általában az első paradigmát (1NF), a második (2NF) és a harmadik paradigmát (3NF) használjuk, amelyek a cikkben tárgyalandó "három paradigma".
Első Paradigma (1NF): Megköveteli, hogy az adatbázis tábla minden oszlopa oszthatatlan atomi adatelem legyen.
Illusztrál:
A fenti táblázatban sem a "Családi információk", sem "Iskolai információk" oszlopok nem felelnek meg az atomisági követelményeknek, így nem felelnek meg az első paradigmának, és az alábbiak szerint vannak módosítva:
Látható, hogy minden korrigált oszlop oszthatatlan, így megfelel az első paradigmának (1NF);
Paradigma 2 (2NF): Az 1NF alapján a nem kódos attribútumoknak teljesen függniük kell a jelölt kódoktól (megszüntetik a nem elsődleges attribútumok részleges függvényfüggőségét a fő kódtól 1NF alapján)
A második paradigmának biztosítania kell, hogy az adatbázis táblájának minden oszlopa kapcsolódjon az elsődleges kulcshoz, nem csupán a fő kulcs egy része (főként a föderált elsődleges kulcsok esetében).
Illusztrál:
A fenti ábrán látható esetben ugyanaz a sorrend eltérő szorzatokat tartalmazhat, így a fő kulcsnak a "rendelési szám" és a "termékszám" kombinációja kell legyen.
Ugyanakkor előfordulhat, hogy a termékmennyiség, a termékkedvezmény és a termék ára mind a "rendelési számmal" és a "termékszámmal" kapcsolatosak, míg a rendelés összege és a rendelés ideje csak a "rendelési számhoz" kapcsolódik, és semmi közük nincs a "termékszámhoz".
Ez nem felel meg a második paradigma követelményeinek, és az alábbiak szerint módosítják, amelyet két táblázatra kell osztani:
Harmadik paradigma (3NF): A 2NF alapján bármely nem fő attribútum nem függ más nem fő attribútumoktól (a továbbítási függőségek megszüntetése a 2NF alapján)
A harmadik paradigma biztosítja, hogy az adattábla minden adatoszlopa közvetlenül kapcsolódjon az elsődleges kulcshoz, ne közvetve.
Illusztrál:
A fenti táblázatban minden attribútum teljesen függ a diákok számától, így a második paradigma teljesül, de a "osztálytanár neme" és "osztálytanár életkora" közvetlenül függ az "osztálytanár nevén".
A fő kulcs, "diák szám" helyett a következő módosításokat kell végrehajtani:
Így teljesítődnek a harmadik paradigma követelményei.
ps:如果把上表中的班主任姓名改成班主任教工号可能更确切,更符合实际情况,不过只要能理解就行。
BCNF (Bovce Codd normál forma Bacchus paradigma)
A korrekció harmadik paradigmája, hogy megakadályozzuk, hogy az elsődleges kulcs egyik oszlopa a fő kulcs többi oszlopához támaszkodjon. Amikor a 3NF megszünteti néhány függvényfüggőséget és átviteli függvényfüggőséget a fő attribútumkódon, azt BCNF-nek nevezik.
Jellemző:
1. Minden fő attribútum teljesen funkcionális függőség minden kódhoz
2. Minden fő attribútum teljesen függvényfüggő minden olyan kódtól, amely nem tartalmazza ezt
3. Nincsenek olyan attribútumok, amelyek teljesen funkcionálisak és bármilyen nem kódos tulajdonsághalmaztól függnének.
Például a készlettáblában (raktár neve, adminátrátor neve, terméknév, mennyiség) elsődleges kulcsa (raktár neve, adminisztrátor neve, terméknév), ami megfelel az előző három paradigmának, de függ a raktár és az adminisztrátor neve között, így egy raktár törlése az adminisztrátort törli, így a BCNF nem elégedett.
4NF Negyedik Paradigma
A nem elsődleges attribútumoknak nem szabad több értéket képviselniük. Ha létezik többérték, az megsérti a negyedik paradigmát. A 4NF egy korlátozó relációs minta, amely nem engedélyezi a nem triviális és nem függvényfüggő, többértékű függőségeket a tulajdonságok között.
Például a felhasználói kapcsolati adattábla (felhasználói azonosító, vezetékestelefon, mobiltelefon), ahol a felhasználói azonosító az elsődleges kulcs, ami megfelel a BCNF-nek, de a felhasználónak több vezetékes vagy több mobiltelefonja van, akkor ez a kialakítás ésszerűtlen, ezért módosítani kell (felhasználói azonosító, kapcsolati típus, telefonszám).
Megjegyzés: Ha csak a függvényfüggőségeket vesszük figyelembe, a legmagasabb arányú relációs minták normalizációjával rendelkező paradigma a BCNF. Ha többértékű függőségeket veszünk figyelembe, akkor ez 4NF.
5NF Ötödik Paradigma
Az ötödik paradigma a végső paradigma, amely megszünteti a 4NF kapcsolatfüggőségét, és az ötödik paradigmának a következő követelményeknek kell megfelelnie:
1. A negyedik paradigma teljesíteni kell
2. A tábláknak kisebb táblákra kell bonthatóak, hacsak ezek a táblák logikusan ugyanazzal a fő kulcsmal rendelkeznek, mint az eredeti táblák.
Általános gyakorlati alkalmazásokban az ötödik paradigmát nem kell figyelembe venni.
Áthelyezve:A hiperlink bejelentkezés látható. Utalás:A hiperlink bejelentkezés látható.
|