Egy kis emlékezetfrissítésként íme Codd 12
szabálya a relációsadatbázis- kezelő rendszerekkel
kapcsolatban:
- Információs
szabály: minden információ táblázatokban szereplő értékekkel
van kifejezve. Hagyományosan nincsenek tömbök, vektorok vagy más
összetett adattípusok.
- Garantált elérési
szabály: minden adat logikailag elérhető a táblanév, az
oszlopnév és az elsődleges kulcs értékének megadásával. A tábla minden
sorában ugyanazokhoz az oszlopokhoz tartozó értékeket találunk, míg az
értékek típusa oszloponként eltérhet. Mivel a soroknem különböztethetők
meg egyértelműen, ezért szükség van legalábbegy olyan oszlopra, amely
azonosíthatja a sorokat. Ezt az oszlopot elsődleges kulcsnak
nevezik.
- Hiányzó információ
szabálya: a nulla értékek megjelenítése független az adat
típusától. Ez a három értékű logika jellemzi az SQL-t is. A legtöbb
programnyelvben a logikai kifejezések értéke igaz vagy hamis lehet. Az
SQL-ben megjelenhet a NULL érték, melyet akkor írunk, havalamilyen okból
hiányzik az adat.
- Rendszerkatalógus
szabálya: az adatbázis logikai leírása úgy áll rendelkezésre,
hogy az arra jogosult felhasználó ugyanolyan módon kérdezheti le, mint
az adatbázisban tárolt adatokat.
- Széleskörű
nyelv szabálya: egy jól definiált szintaxissal ellátott,
karaktersorozatokkal leírható, magasszintű relációs nyelv áll
rendelkezésre, amelynek segítségével leírhatók a következők: adat és
nézet definíciója, integritási feltételek, interaktív és programozható
adatkezelés, tranzakció-kezdés, -érvényesítés és
-elutasítás.
- Nézetmódosítás
szabálya: a rendszer képes végrehajtani minden elméletileg
lehetséges módosítást a
nézeteken.
- Halmazszintű módosítás
szabálya: a rendszer képes egész táblázatok együttes
kezelésére.
- Fizikaiadatfüggetlenség
szabálya: a felhasználó és alkalmazói programok tevékenysége
független a fizikai adattárolásban vagy adatelérési módszerekben
bekövetkező
változásoktól.
- Logikaiadatfüggetlenség
szabálya:a felhasználó és alkalmazói programok tevékenysége
független az adatbázis táblázatainak logikai struktúrájában bekövetkező
változásoktól, feltéve, hogy azok nem járnak
információvesztéssel.
- Integritásfüggetlenségi
szabály: az egyed- és hivatkozás integritási feltételek az 5.
szabály által meghatározott relációs nyelv segítségével
definiálhatók.
- Elosztásfüggetlenségi
szabály: a felhasználó és alkalmazói programok tevékenysége
független az adatok
elhelyezésétől.
- Megkerülés-tiltási
szabály: egy alacsonyabb szintű eljárás orientáltprogramnyelv
használatával nem lehet megkerülni az integritási vagy biztonsági
feltételeket.
Ami érdekes a 12 szabályban
az, hogy van egy 13. is, amit 0. sorszámmal is szokás
ellátni:
Ahhoz, hogy egy rendszer
relációsnak, adatbázisnak, és
kezelő rendszernek ( relational database management
system - RDBMS) legyen nevezhető, elfogadható – a rendszernek a
relációkkal foglalkozó adottságait (kizárólag) az
adatbázis kezelésére kell
használnia.
Különös, hogy elérhető az
Amazon, Azure, Google végtelennek tűnő számítási és tárolási kapacitása,
mégis gyakran a régi szabálynak megfelelő adatbázis jelenti
az optimális megoldást.