11.03. Adatmodellek - relációs adatmodell

Default book

Relációs adatbázis modell. A legelterjedtebb modell. Az elterjedt adatbáziskezelők többsége ezt használja. A matematikai leírása a halmazelméletből indul ki, amivel most nem foglalkozunk.

  • Az adatokat táblázatokban tárolják. A táblázatot relációnak hívjuk.
    • A táblázat oszlopára azt mondjuk, hogy mező
    • A táblázat egy sora a rekord
  • A táblázatban szereplő rekordok azonos szerkezetűek, vagyis típusuk azonos! Ez azt jelenti, hogy minden rekordban ugyanabban a mezőben ugyanolyan típusú adatoknak kell lenniük.
  •  A táblázatban nem fontos a mezők sorrendje (!).
  • A táblázat nem lehet két azonos adatokkal feltöltött sora.
  • A táblázat rekordjainak sorrendje tetszőleges lehet

A relációs adatbázisokban használt fogalmakkal ismerkedünk meg

Az egyed(típus)

Egyednek (egyedtípusnak) hívunk minden olyan dolgot (objektumot), ami minden más objektumtól megkülönböztethető és amiről adatokat tároltunk.

Az egyed konkrét dolgok absztrakciója, konkrét dolgokat fog egybe. Matematikailag az egyed bizonyos tulajdonságú dolgok halmaza. Például az autó fogalma egy egyed. Egy darab autó ennek az egyedtípusnak (halmaznak) egy előfordulása (a halmaz egy eleme).

Az egyed egy konkrét értékét az egyed egy előfordulásának nevezzük.

A rekordtípus

Az adatbáziskezelő rendszerekben (a relációs modelleken alapulókban) az egyedtípust rekordtípusnak hívjuk. Ez a legkisebb címezhető egység (ennél kisebb részeire nem lehet hivatkozni az adatbázisnak).

Tulajdonság

Az egyedeket tulajdonságokkal (attribútumokkal) írjuk le. A tulajdonság az egyed egy jellemzője, ami megadja, meghatározza az egyed e részletét. A tulajdonság is absztrakció, amely több elemet foglal(hat) magába, tehát konkrét előfordulásokból áll.

A tulajdonságok lehetnek:

  • azonosítók (például a kulcsmezők) Ha egy tulajdonság minden értéke minden egyed előfordulásra biztosan más és más értéket vesz fel, akkor azonosítónak hívjuk.
  • leírók (nem kulcsmezők) A leírók nem határozák meg egyértelműen az egyed előfordulásait.

Azonosítók

Az azonosítók létrehozása esetenként az egyed természetes tulajdonságaiból adódik. Erre példa a személyi szám a személyek azonosítása terén.

Egyszerű azonosító: Ha az egyedtípus egy egyszerű tulajdonsága egyúttal azonosítja az egyed egy előfordulását. Pl. Személyi szám. TB szám.

Amikor nem lehet ilyen azonosítót alkalmazni, két lehetőségünk van:

Összetett azonosító: Addig bővítjük az azonosításra alkalmas tulajdonságok körét, amíg elérjük, hogy a sajátosságok kombinációja már egyedileg azonosítja a kérdéses egyedek előforulásait (pl. személy neve + anyja neve + lakcím + születési hely + születési idő)

Mesterséges azonosító (ez is egyszerű azonosító): Mesterséges nevet alkotunk, aminél biztosítjuk az egyediséget, de aminek esetleg semmi köze nincsen az egyedtípus tulajdonságaihoz. (pl. automatikusan növekvő sorszám, rendszám)

Kulcs

Amennyiben a tulajdonságok vagy a tulajdonságok egy csoportja egyértelműen meghatározza, hogy az egyed melyik értékéről, előfordulásáról van szó, akkor ezeket kulcsoknak nevezzük.

Többértékű tulajdonságok

Ha a tulajdonságok olyanok, hogy több értéket is tartalmaznhatnak, akkor többértékű tulajdonságnak hívjuk.

Egyszerű tulajdonság

Ha a tulajdonság nem osztható fel összetevőkre.

Összetett tulajdonság

Ha a tulajdonság felosztható más, önmagukban is értelmes tulajdonságokra.

Egyszerű kulcs

Olyan kulcs, amely csak egy tulajdonságból áll. (Autó rendszáma)

Összetett kulcs

Olyan kulcs, amely több tulajdnságból áll össze (pl. Név + születési idő + születési hely + anyja neve + lakcím)

Elsődleges tulajdonság

Olyan tulajdonság, amely önmaga is kulcs vagy pedig egy kulcs az összetevője (A fenti példákban a személy neve)

Másodlagos tulajdonság

Olyan tulajdonság, amely nem kulcs és nem is része kulcsnak (pl. A személy szemének színe)

A kapcsolat

Kapcsolatnak nevezzük az egyedtípusok közötti viszonyt. A kapcsolat mindig valóságos objektumok közötti viszonyt fejez ki, hiszen az egyed ilyen objektumokat képvisel.

A kapcsolódó egyedek között általában nem egyenrangú a viszony, hanem lehet egyfajta irányításról beszélni. A kapcsolat meghatározója a tulajdonos (owner) és a kapcsolat másik oldalán lévő egyed vagy egyedek a tagok (member).

A kapcsolat fokai

  • Kapcsolat egyidejűleg több egyed között is lehet. Ha a kapcsolat n egyedet "köt össze" akkor n-edfokúnak nevezzük.
  • A leggyakoribb a bináris (másodfokú) kapcsolat, amikor is két egyed között van viszony.
  • Speciális bináris kapcsolat a rekurzív bináris kapcsolat. Ilyenről van szó akkor, ha az egyeden belül az előfordulások vannak kapcsolatban. Pl.: a dolgozó egyedben benne vannak a vezetők is (általában ők is dolgozók), de a többi dolgozóval speciális kapcsolátban vannak: vezetői-beosztotti kapcsolatban

A kapcsolatok fajtái

Egy kapcsolat voltaképpen az egyedhalmazok elemei közötti viszonyt fejezi attól függően, hogy az egyedhalmaz elemei milyen módon kapcsolódik egymáshoz, azaz egy adott egyed egy előfordulásához hány előfordulás kapcsolódik a másik egyedből három esetet különböztetünk meg

Egy-egy típusú kapcsolat (1:1 kapcsolat)

A kapcsolat lelet olyan, hogy az egyik egyedhalmaz mindegyik eleméhez a másik egyedhalmaznak pontosan egy eleme kapcsolódik (tehát a két egyedhalmaz egymásba kölcsönösen egyértelműen képezhető le. Az ilyen kapcsolatot egy-egy (jelben 1 :1) típusúnak nevezzük

Egy-több típusú kapcsolat (1:N kapcsolat)

Azt mondjuk, hogy az A egyed és a B egyed között egy-több (jelben: 1:N) típusú kapcsolat van, ha az A egyedhalmaz mindegyik eleméhez a B egyedhalmaznak több eleme is tartozhat.

Több-több típusú kapcsolat (N:M kapcsolat)

Több-több (jeIben N:M) típusú kapcsolatnak nevezzük az A egyed és a B egyed közötti kapcsolatot; ha az A egyedhalmaz minden eleméhez B halmaz több eleme is tartozhat, továbbá B minden eleméhez A több eleme is kapcsolódhat. (Élelmiszer gyárak <=> Boltok. Egy boltba tüöbb gyárból is szállíthatnak, egy gyárból több bolba is szállíthatnak)

Az ilyen kapcsolatot az adatbáziskezelő rendszerek nem feltétlenül tudják automatikusan lekezelni, ezért ilyenkor szokásos automatikusan a két egyedtípus közé felvenni egy kapcsoló egyedtípust, amely a kapcsolatokat szétvágja két egy-több típusú kapcsolatra. Az ilyen kapcsoló egyedek gyakran valamiféle eseményt hordoznak.

Nulla vagy egy-egy típusú kapcsolat

Ez a kapcsolattípus akkor jön létre, ha egy egydhalmaz előfordulásaihoz a másik egyedhalmazból nem feltétlenül tartozik egy előfordulás. (Pl. bank-adós - nem feltétlenül van egy banknak adósa)

Egy-nulla vagy egy - több típusú kapcsolat

Ha az egyik egyedtípushoz a másik egyedtípusban nem feltétlenül tartozik előfordulás vagy több előfordulás tartozhat.

A kapcsolatok ábrázolásához használhatjuk az Egyedkapcsolat diagramot. (Entity RelationShip Diagram - ERD)  Ilyen diagramokat lehet készíteni a Microsoft Access kapcsolattervezőjében vagy sok más hasonló alkalmazásban.