Codd 12 szabálya

A Wikipédiából, a szabad enciklopédiából

Codd 12 szabálya egy 13 szabályból álló lista (nullától tizenkettőig számozva), amit Edgar F. Codd, az adatbázisok relációs modelljének úttörője indítványozott, annak érdekében, hogy definiálja, milyen elvárásokat kell támasztani egy adatbázis-kezelő rendszerrel szemben, hogy relációsnak legyen tekinthető, azaz, hogy relációs adatbázis-kezelő rendszer legyen. Időnként viccesen „Codd Tizenkét Parancsolata”-ként is emlegetik.

Története[szerkesztés]

Codd egyszemélyes kampányának részeként alkotta meg ezeket a szabályokat, hogy megakadályozza, hogy az eredeti relációs adatbázis elképzelése elhalványuljon, a '80-as évek első felében, amikor az adatbázisgyártók azért küzdöttek, hogy a meglévő termékeik felépítését látszólag hasonlóvá tegyék a relációs modellhez. A 12-es szabály kifejezetten az ilyen felszínesség ellen született meg.

A szabályok[szerkesztés]

0-s szabály: Az alapszabály:

Bármilyen rendszer, amit úgy akarnak eladni, vagy amiről azt állítják, hogy egy relációs adatbázis-kezelő rendszer, minden adatbázist teljes egészében a relációs funkcióival kell kezelnie.

1-es szabály: Az információs szabály:

A relációs adatbázisban minden információ az ember számára érthető formában a logikai szinten jelenik meg és pontosan egyféleképpen – táblák értékeiként.

2-es szabály: A garantált elérési szabály:

A relációs adatbázis minden egyes adat (atomi érték) logikai elérését garantálja, a táblanév, az elsődleges kulcs értéke, és az oszlopnév kombinációjának a felhasználásával.

3-as szabály: A null érték egységes kezelése:

A null értéket (ami nem ugyanaz, mint az üres karakterlánc vagy a szóközök, ill. a nulla vagy bármelyik másik szám), ami hiányzó vagy nem használható információt hivatott jelölni, minden relációs adatbázis-kezelő rendszer egységesen támogatja, adattípustól függetlenül.

4-es szabály: Relációs modellen alapuló dinamikus online katalógus:

Az adatbázis leírása ugyanúgy a logikai szinten jelenik meg, mint bármilyen adat, így jogosultsággal rendelkező felhasználók ugyanazt a relációs nyelvet használhatják a lekérdezéséhez, mint amit a többi adathoz.

5-ös szabály: Az átfogó adatrésznyelv szabálya:

Egy relációs rendszer támogathat több nyelvet és különféle módjait a végfelhasználó-oldali munkának (például űrlapok kitöltése). De léteznie kell legalább egy nyelvnek, aminek az utasításai, egy jól definiált szintaxison keresztül, karakterláncokkal kifejezhetők, és ami átfogóan támogatja az alábbiak közül mindet:
  1. Adatdefiníció.
  2. Nézetdefiníció.
  3. Adatkezelés (közvetlenül és programokkal).
  4. Integritási megszorítások.
  5. Jogosultság-ellenőrzés.
  6. Tranzakciók terjedelme (kezdet, véglegesítés, visszagörgetés).

6-os szabály: Nézetek módosítási szabálya:

Minden nézet, ami elméletileg módosítható, a rendszer által is módosítható.

7-es szabály: Magas szintű hozzáadás, módosítás, törlés lehetősége:

Egy alap- vagy származtatott reláció egységként való kezelhetősége nem csak adatok visszanyerésére vonatkozik, hanem adatok hozzáadására, módosítására, törlésére is.

8-as szabály: Fizikai adatfüggetlenség:

A felhasználói programok és a velük végzett munka változatlanul működnek tovább a tárolási vagy elérési módok változtatásai esetén is.

9-es szabály: Logikai adatfüggetlenség:

A felhasználói programok és a velük végzett munka változatlanul működnek tovább az alap-táblákat érintő olyan, a tárolt információkat változatlanul hagyó változtatások esetén is, amik során elméletileg sérülhetne a velük való integráció.

10-es szabály: Integritási függetlenség:

Egy adott relációs adatbázishoz tartozó integritási megszorításoknak definiálhatónak kell lenniük a relációs adatrésznyelvben, és a katalógusban kell tárolni ezeket, nem a felhasználói programokban.

11-es szabály: Elosztási függetlenség:

A végfelhasználó nem láthatja, hogy az adatok különböző helyekre vannak elosztva. A felhasználóknak az kell legyen a benyomásuk, hogy az adattárolás egy helyen történik.

12-es szabály: A meghiúsítás elleni szabály:

Ha egy relációs rendszernek van alacsony szintű (egyszerre egy rekordot) nyelve, ez nem használható a magasabb relációs nyelv (egyszerre több rekordot) által definiált integritási szabályok és megszorítások meghiúsítására vagy megkerülésére.

Fordítás[szerkesztés]

  • Ez a szócikk részben vagy egészben a Codd's 12 rules című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.