ADATBÁZIS-KEZELÉS Relációs modell
Relációséma neve attribútumok ORSZÁGOK Azon Ország Terület Lakosság Főváros Földrész 131 Magyarország 93036 10041000 Budapest Európa 3 Algéria 2381740 33769669 Algír Afrika rekordok komponens Relációséma: ORSZÁGOK (Azon, Ország, Terület, Lakosság, Főváros, Földrész) 2
TARTOMÁNY (D): Atomi értékek halmaza. Jellemzői: Név Adattípus Formátum Korlátozás További információk az értelmezéshez ATTRIBÚTUM (A): Kijelöli valamely tartomány szerepét az adott reláció séma esetén. DOM(A): Az adott attribútum milyen tartományhoz tartozik. Beleértjük a NULL elemet is. Előfordulhat, hogy több attribútumnak is ugyanaz a tartománya 3
RELÁCIÓSÉMA: Relációséma alatt az R(A 1,A 2,,A n ) jelölést értjük, ahol R relációséma neve, A 1,A 2,,A n pedig az attribútumok. ORSZÁGOK (Azon, Ország, Terület, Lakosság, Főváros, Földrész) RELÁCIÓ: Egy r(r) reláció nem más, mint egy dom(a 1 ), dom(a 2 ),,dom(a n ) tartományokon értelmezett n-edfokú matematikai reláció, azaz részhalmaza azon tartományok Descaretes-szorzatának, melyek R- et definiálják. r(r) dom(a 1 ) dom(a 2 ) dom(a n ) Egy relációsémához tetszőlegesen sok reláció tartozik. RELÁCIÓ SZÁMOSSÁGA: Rekordok száma. KOMPONENS: t(a): t rekord értéke az A attribútum esetén. 4
A RELÁCIÓS MODELL MEGSZORÍTÁSAI Az adatmodell megszorításainak csoportosítása: Az adatmodellben benne rejlő megszorítások: modell alapú, implicit megszorítások. Az adatmodell sémáiban közvetlenül kifejezett megszorítások: séma alapú, explicit megszorítások. Olyan megszorítások, amelyeket nem lehet közvetlenül az adatmodell sémáiban kifejezni, és ezért az alkalmazói programokkal kell kifejezni és érvényre juttatni őket: alkalmazás alapú, szemantikus megszorítások vagy üzleti szabályok. 5
SÉMA ALAPÚ MEGSZORÍTÁSOK Tartománymegszorítások kulcsmegszorítások és a NULL értékekre vonatkozó megszorítások egyedintegritási megszorítások hivatkozási integritási megszorítások 6
TARTOMÁNYMEGSZORÍTÁS Kimondja, hogy minden rekordban minden egyes A attribútumhoz tartozó értéknek a dom(a) tartományból kell származnia, és ezen dom(a) tartományok minden elemének atomi értéknek kell lennie. 7
SZUPERKULCS Az R relációsémának létezik egy olyan attribútumhalmaza, amely olyan tulajdonságú, hogy tekintve R bármelyik r relációját, az adott relációban nincs két olyan rekord, amelynek az értékei azonosak lennének ezen attribútumokra vonatkozóan. Az attribútumoknak egy ilyen részhalmazát SK-val jelölve, bármely két különböző t 1 és t 2 rekordot kiválasztva R egy r relációjából: t 1 [SK] t 2 [SK] Minden ilyen SK attribútumhalmaz az R relációséma szuperkulcsa. Minden relációnak van legalább egy szuperkulcsa. Több szuperkulcs is lehet. 8
KULCS Egy R relációséma K kulcsa R-nek egy olyan szuperkulcsa, amelyből egy A attribútumot elhagyva, az így kapott K attribútumhalmaz már nem szuperkulcsa R-nek. Egy kulcs kielégíti a következő két feltételt: Bármilyen relációt tekintve, a reláció két különböző rekordjának nem lehetnek azonosak a kulcsban szereplő attribútumokhoz tartozó értékei. Minimális szuperkulcs, azaz egy szuperkulcs, amelyből nem tudunk úgy eltávolítani egyetlen attribútumot sem, hogy az egyediségre vonatkozó feltétel továbbra is fennálljon. Egy K kulcs egyszerű, ha egyetlen attribútum alkotja, egyébként összetett. 9
ELSŐDLEGES KULCS Egy relációsémának egynél több kulcsa is lehet. Ilyen esetben a kulcsok mindegyikét kulcsjelöltnek hívjuk. Elsődleges kulcs: Ez a kulcsjelölt lesz az, amelynek az értékeit a relációkban szereplő rekordok azonosítására fogjuk használni. A kulcsmegszorítás szerint a relációsémának mindig rendelkeznie kell elsődleges kulccsal. Egy relációséma elsődleges kulcsát alkotó attribútumokat aláhúzással szoktuk jelölni. 10
EGYEDINTEGRITÁSI MEGSZORÍTÁS Kimondja, hogy egyetlen elsődleges kulcsérték sem lehet NULL érték. Ha az elsődleges kulcs összetett, akkor annak egyik komponense sem lehet NULL érték. Megengedve a NULL értékeket az elsődleges kulcs számára, nem tudnánk egyértelműen azonosítani minden rekordot. Például ha két vagy több rekordnál NULL érték tartozna az elsődleges kulcsukhoz, akkor nem tudnánk megkülönböztetni őket, ha megpróbálnánk más relációkból hivatkozni rájuk. 11
HIVATKOZÁSI INTEGRITÁSI MEGSZORÍTÁS A hivatkozási integritási megszorítást két reláció között értelmezzük, és a két relációban lévő rekordok közötti konzisztencia megteremtése érdekében használjuk. Egy R1 relációséma FK-val jelölt attribútumhalmaza külső (idegen) kulcsa R 1 -nek, amely hivatkozik az R 2 relációsémára, ha eleget tesz a következő feltételeknek: Az FK-beli attribútumoknak és az R 2 PK-val jelölt elsődleges kulcsattribútumainak páronként azonos a tartománya; ekkor azt mondjuk, hogy az FK attribútumok hivatkoznak az R2 relációsémára. Bármely r 1 (R 1 ) aktuális állapotának egy t 1 rekordjában egy FK-beli érték vagy megjelenik egy r 2 (R 2 ) aktuális állapotának valamely t 2 rekordjában PK értékeként, vagy az értéke NULL. Az előbbi esetben t 1 [FK] = t 2 [PK], ekkor azt mondjuk, hogy a t 1 rekord hivatkozik a t 2 rekordra. Ha e két feltétel teljesül, egy hivatkozási integritási megszorítás áll fenn R 1 -ről R 2 -re vonatkozóan. 12
EGYÉB TÍPUSÚ MEGSZORÍTÁSOK Szemantikus integritási megszorítások Adatok közti függések Átmenet megszorítás 13
RELÁCIÓS ADATBÁZISSÉMA Egy S relációs adatbázisséma az S={R 1,R 2,,R m } relációséma-halmaz, valamint integritási megszorítások halmazának az együttese. 14
15