Az adatbázis módosítása
Ha egy ideig dolgozik az adatbázisokkal, valószínű, hogy hallottad a normalizáció fogalmát. Talán valaki megkérdezte: "Ez az adatbázis normalizálódott-e?" vagy "Ez a BCNF-ben van ?" A normalizálást gyakran félreteszik, mint luxus, amelyre csak az akadémikusoknak van ideje. Azonban a normalizálás elveinek ismerete és alkalmazása a napi adatbázis-tervezési feladatokra valóban nem minden olyan bonyolult, és drasztikusan javíthatja a DBMS teljesítményét.
Ebben a cikkben bemutatjuk a normalizáció fogalmát, és röviden áttekintjük a leggyakoribb rendes formákat.
Mi a normalizáció?
A normalizálás az adatbázisban lévő adatok hatékony szervezésének folyamata. A normalizációs folyamatnak két célja van: a redundáns adatok (pl. Ugyanazon adatok tárolása több táblában) és az adatok közötti függőségek értelmének biztosítása (csak a kapcsolódó adatok tárolása a táblázatban). Mindkettő méltó célokat jelent, mivel csökkentik az adatbáziskészletek mennyiségét, és biztosítják az adatok logikus tárolását.
A normál formák
Az adatbázis közösség számos iránymutatást dolgozott ki annak biztosítására, hogy az adatbázisok normalizálódjanak. Ezeket szokásos formáknak nevezik, és egy (a legalacsonyabb normalizációjú formában, az első normál forma vagy az 1NF) öt (ötödik normál forma vagy 5NF) számozással számozva. Gyakorlati alkalmazások esetén gyakran látni fog 1NF, 2NF és 3NF az alkalmi 4NF-rel együtt. Az ötödik normál formát nagyon ritkán látjuk, és ebben a cikkben nem foglalkozunk.
Mielőtt elkezdenénk beszélni a normális formákról, fontos megjegyezni, hogy csak iránymutatások és iránymutatások. Időnként szükségessé válik, hogy elhagyják őket, hogy megfeleljenek a gyakorlati üzleti követelményeknek. Azonban, amikor változások zajlanak le, rendkívül fontos, hogy értékeljük az esetleges lehetséges következményeket a rendszerünkön, és vegyük figyelembe az esetleges inkonzisztenciákat. Mondjuk, feltárjuk a normális formákat.
Első normál forma (1NF)
Az első normál forma (1NF) meghatározza a szervezett adatbázis alapvető szabályait:
- Távolítsa el a duplikált oszlopokat ugyanabból a táblából.
- Hozzon létre külön táblákat a kapcsolódó adatok minden csoportjához, és azonosítsa az egyes sorokat egy egyedi oszlop vagy oszlopkészletek (az elsődleges kulcs ) azonosításával.
Második normál forma (2NF)
A második normál forma (2NF) tovább foglalkozik a duplikált adatok eltávolításának koncepciójával:
- Eleget tesz az első normál űrlap összes követelményének.
- Távolítsa el az asztal több sorát érintő adatok alcsoportjait, és helyezze őket külön táblázatokba.
- Hozzon létre kapcsolatokat az új táblák és elődeik között külföldi kulcsokkal .
Harmadik normál forma (3NF)
A harmadik normál forma (3NF) egy nagy lépéssel tovább halad:
- Megfeleljen a második normál űrlap összes követelményének.
- Távolítsa el az elsődleges kulcstól nem függő oszlopokat.
Boyce-Codd normál forma (BCNF vagy 3.5NF)
A Boyce-Codd normál forma, amelyet "harmadik és fél (3.5) normál formának" is neveznek, még egy követelményt is tartalmaz:
- A harmadik normál formanyomtatvány összes követelményének megfelel.
- Minden meghatározónak jelölt kulcsnak kell lennie .
Negyedik normál forma (4NF)
Végül a negyedik normál forma (4NF) egy további követelmény:
- A harmadik normál formanyomtatvány összes követelményének megfelel.
- A kapcsolat 4NF-ben található, ha nem rendelkezik többértékű függőséggel .
Ne feledje, ezek a normalizálási iránymutatások halmozottak. Ahhoz, hogy egy adatbázis 2NF-ben legyen, először meg kell felelnie az 1NF adatbázis összes kritériumának.
Meg kellene normalizálnom?
Bár az adatbázis normalizálása gyakran jó ötlet, nem feltétlen követelmény. Valójában vannak olyan esetek, amikor a normalizálás szabályainak szándékos megsértése jó gyakorlat. További tudnivalók a következő témakörökben olvashatóak: Ha normalizálnám az adatbázisomat?
Ha szeretné biztosítani, hogy az adatbázisa normálissá váljon , kezdd el, hogyan lehet az adatbázisot az első normál űrlapba helyezni .