relational model (tsz. relational models)
A relációs modell az adatbázis-kezelés egyik legelterjedtebb és legismertebb elméleti alapja, amelyet Edgar F. Codd dolgozott ki 1970-ben. A modell célja az adatok strukturált, logikus és következetes tárolása és kezelése.
A relációs modell az adatokat táblákban (relációkban) tárolja, ahol minden tábla sorai rekordokat (tuplékat), oszlopai pedig attribútumokat (mezőket) jelentenek. A modell tisztán matematikai elveken – halmazelméleten és predikátumlogikán – alapul.
Olyan két dimenziós táblázat, amely sorokat (rekordokat) és oszlopokat (attribútumokat) tartalmaz.
A tábla oszlopainak neve. Pl.: Név
, Kor
, Email
.
Egy sor egy egyedi rekord a táblában.
Az attribútumhoz tartozó lehetséges értékek halmaza. Pl. a Kor
mező doménje lehet: pozitív egész számok.
Az a mező (vagy mezők csoportja), amely egyértelműen azonosít egy rekordot a táblában.
Példa: Egy
Személy
tábla esetén aTAJ-szám
lehet elsődleges kulcs.
Egy másik tábla elsődleges kulcsára hivatkozó mező. Segít az adatok kapcsolatának modellezésében.
Az idegen kulcsok biztosítják az adatbázis integritását és a kapcsolatok épségét.
Egy rekord csak egy másik rekordhoz tartozhat.
Egy rekord több másik rekordhoz kapcsolódhat.
Több rekord több másikkal is kapcsolatban állhat – általában kapcsolótáblával oldjuk meg.
Az elsődleges kulcs nem lehet NULL.
Az idegen kulcs csak olyan értéket vehet fel, amely létezik a hivatkozott táblában, vagy NULL.
A relációs modell matematikai alapját az algebrai műveletek képezik:
Művelet | Leírás |
---|---|
Kiválasztás (σ) | Sorok szűrése feltétel alapján |
Vetítés (π) | Csak meghatározott oszlopok megtartása |
Unió (∪) | Két tábla egyesítése |
Metszet (∩) | Két tábla közös elemei |
Különbség (-) | Az egyik tábla azon rekordjai, amik a másikban nincsenek |
Deszkárteszi szorzat (×) | Két tábla minden kombinációja |
Összekapcsolás (⨝) | Kapcsolódó rekordok egyesítése egy közös mező alapján |
Diák
tábla:DiákID | Név | Születésnap |
---|---|---|
1 | Anna | 2002-04-12 |
2 | Béla | 2001-12-05 |
Beiratkozás
tábla:DiákID | Tárgy |
---|---|
1 | Matematika |
1 | Fizika |
2 | Biológia |
Itt a DiákID
az elsődleges kulcs a Diák
táblában, és idegen kulcs a Beiratkozás
táblában.
A SQL (Structured Query Language) a relációs modell lekérdezési nyelve.
SELECT Név
FROM Diák
WHERE DiákID = 1;
Ez lekérdezi az Anna
nevű diákot.
Néhány ismertebb relációs adatbázis:
Név | Leírás |
---|---|
MySQL | Nyílt forráskódú, széles körben használt |
PostgreSQL | Fejlett funkciók, nyílt forráskód |
SQLite | Beágyazott, fájl alapú |
Oracle | Nagyvállalati szintű rendszer |
Microsoft SQL Server | Microsoft ökoszisztémába illeszkedik |
A relációs modell egy robusztus, jól definiált adatstruktúra, amely elterjedten használt az informatikai rendszerekben. Lehetővé teszi az adatok következetes, pontos, és jól karbantartható tárolását és elérését. A modell alapelvei a mai napig meghatározzák az adatbázis-kezelés világát.