Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

ABR ( Adatbázisrendszerek)

Hasonló előadás


Az előadások a következő témára: "ABR ( Adatbázisrendszerek)"— Előadás másolata:

1 ABR ( Adatbázisrendszerek)
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda ABR ( Adatbázisrendszerek) 2. Előadás : Műveletek a relációs modellben 2.2 Műveletek a relációs modellben 2.2.1 Relációra vonatkozó megszorítások 2.2.2 Multihalmazon értelmezett műveletek 2.2.3 A relációs modell további kiterjesztései

2 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Adott az adatbázis sémája, amelyik négy relációból áll: Termék(gyártó, modell, típus) PC(modell, sebesség, memória, merevlemez, ár) Laptop(modell, sebesség, memória, merevlemez, képernyő, ár) Nyomtató(modell, színes, típus, ár)

3 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
e) Melyek azok a gyártók, akik laptopot árulnak, PC-t viszont nem f) Melyek azok a merevlemezméretek, amelyek legalább 2 különboző tipusú PC-ben megtalálhatók? gyártó(Laptop Termék) gyártó(PC Termék) f) merevlemez(C(PC X PC_1)) C=(PC.modell<>PC_1.modell) AND (PC.merevlemez=PC_1.merevlemez)

4 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
g) Adjuk meg azokat a PC párokat, amelyek ugyanolyan gyorsak és a memóriájuk is ugyanakkora. Egy pár csak egyszer jelenjen meg, azaz, ha már szerepel az (i,j), akkor a (j,i) ne jelenjen meg PC.modell,PC_1.modell(C(PC X PC_1)) C=(PC.sebesseg=PC_1.sebesseg) AND (PC.memoria=PC_1.memoria) AND (PC.modell>PC_1.modell)

5 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
h) Melyek azok a gyártók, amelyek gyártanak legalább két, egymástól különböző, legalább 133 megahertzen működő számítógépet (PC-t vagy Laptopot)? W=modell,gyártó(sebesség>=133(PC Termék)) U modell,gyártó(sebesség>=133(Laptop Termék)) W.gyarto(C(W X W_1)) C=(W.modell>W_1.modell) AND (W.gyarto=W_1.gyarto)

6 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
i) Melyik gyártó gyártja a leggyorsabb számítógépet (PC-t vagy laptopot)? W=sebesség,gyártó(PC Termék) U sebesség,gyártó(Laptop Termék) Q1=W.gyarto,W.sebesseg(c1(W X W_1)) Q2=W_1.gyarto,W_1.sebesseg(c2(W X W_1)) Q= gyarto (Q1-Q2) C1=C2=W.sebesseg>W_1.sebesseg

7 W A 133 120 B 166 200 A 133 120 B 166 200 A 133 120 B 166 200 Q1 Q2 A 133 B 166 200 A 133 120 B 166 A 133 120 B 166 200 Q= gyarto (Q1-Q2) B 200

8 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
j) Melyik gyártó gyárt legalább három, különböző sebességű PC-t W= gyarto,sebesseg(PC Termek) gyártó(C(W X W_1 X W_2)) C=(W.gyarto=W_1.gyarto) AND (W_2.gyarto=W_1.gyarto) AND (W.sebesseg<>W_1.sebesseg) AND (W.sebesseg<>W_2.sebesseg) AND (W_1.sebesseg<>W_2.sebesseg)

9 Ekivalens kifejezések és a lekérdezések optimizálása:
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda Ekivalens kifejezések és a lekérdezések optimizálása: Definíció: Ekivalens kifejezések amelyek ugyanazt az eredményt adják. Példa: cim,ev (hossz<100 (film)  studio=‘FOX’ (film))  cim,ev (hossz<100 AND studio=‘FOX’(film)) 4. Átnevezés Átnevezés: S(A1,A2,..An) (R) és S(R) Ha csak a reláció nevét akarjuk megváltoztatni

10 2.2.1 Relációkra vonatkozó megszorítások
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda 2.2.1 Relációkra vonatkozó megszorítások Megszorítások Nagyon fontosak az adatbázisok világában. Megszorítások megadása relációs algebra segítségével 1. Ha R egy relációs kifejezés, akkor az R=Ø egy olyan megszorítás, amelynek jelentése “az R-nek üresnek kell lennie” vagy másképp ”az R eredményében egyetlen sor sincs”.

11 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
2. Ha R és S relációs algebrai kifejezések, akkor RS egy olyan megszorítás, melynek jelentése: “az R eredményének minden sora benne kell legyen az S eredményében”. Természetesen az S eredménye tartalmazhat az R sorain kívül más sorokat is. A két módon megfogalmazott kifejezés ekvivalens. Az RS felírható az R-S=Ø alakban is.

12 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Hivatkozási épség: Ha egy érték megjelenik valahol egy környezetben, akkor ugyanez az érték egy másik, az előzővel összefüggő környezetben is megjelenik. Ha egy A objektum (egyed, sor) kapcsolatban áll a B objektummal (egyeddel, sorral, akkor B-nek valóban léteznie kell) Film(cím, év, hossz, színes, stúdióNév, producerAzon) Gyártásirányító(név, cím, azonosító, nettóBevétel) producerAzon(Film)azonosító(GyártásIrányító)

13 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Kliensek számlaszám termék Számlák számlája sorai mennyiség Sorszám ÁFA Számlasorok mértékegység egységár Dátum Számla(számlaszám, dátum, áfa, kliensAzon) Kliens(azonosító, név, bank, bszámla) azonosító név bank bszámla kliensAzon(Számla)azonosító(Kliens)

14 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Ekvivalens kifejezések az előbbi feladatokhoz producerAzon(Film)-azonosító(GyártásIrányító)=Ø kliensAzon(Számlaazonosító(Kliens)) A Filmszínész relációban a nem (gender) megengedett értékei ‘N’ és ‘F’ (nem≠‘N’ AND nem≠‘F’ (Filmszínész))=Ø

15 2.2.2. Multihalmazokon értelmezett műveletek
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda Multihalmazokon értelmezett műveletek Def.: Az olyan relációt, ahol megengedett az azonos sorok jelenléte multihalmaznak nevezzük. A kereskedelmi adatbázisok ritkán alapulnak halmazokon, bizonyos esetekben megengedett az azonos sorok jelenléte is. Általános szabály: a relációk (táblák) HALMAZOK a lekérdezések eredményei MULTIHALMAZOK Multihalmaz→Halmaz Select DISTINCT

16 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Mire jók a multihalmazok? Több módon is gyorsíthatja a relációs műveleteket. Vetítés esetén az eredmény multihalmaz, függetlenül lehet dolgozni minden egyes sorral. Ha az eredményt halmazként kezeljük, minden egyes sornál összehasonlítást kell végeznünk az összes többi sorral. Ez sok időt vesz fel, esetenként az információ torzulásához is vezethet. Például, ha értékekre vetítünk.

17 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Sszám sorsz egységár Darab Tkód 1234 1 50 3 A35 1235 30 5 B36 2 20 10 C37 össz=egységár*darab(Számlasor) össz 150 200 multihalmaz halmaz össz 150 200 Halmaz esetén elveszik az információ, ami pénzügyi problémát okozhat.

18 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Multihalmazok egyesítése, metszete, különbsége A B 1 2 3 4 5 6 Ha egy sor m-szer van meg az R-ben és n-szer az S-ben, akkor RUS-ben (n+m )-szer van meg {1,2} 2-szer az R-ben {1,2} 1-szer az S-ben {1,2} 3-szor az RUS-ben A B 1 2 3 4 5 6 A B 1 2 3 4 RUS

19 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Multihalmazok egyesítése, metszete, különbsége A B 1 2 3 4 A B 1 2 5 6 A B 3 4 A B 1 2 3 4 5 6 A B 1 2 3 4 S\R R\S R∩S R S

20 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
R multihalmazban t sor n-szer szerepel S multihalmazban t sor m-szer szerepel RUS-ben a t sor (n+m) -szer szerepel RS-ben a t sor min(n,m) -szer szerepel R\S-ben a t sor max(0,n-m)-szer szerepel S\R-ben a t sor max(0,m-n)-szer szerepel

21 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Multihalmazon értelmezett kiválasztás A B C 2 5 3 4 6 1 7 A B C 3 4 6 1 2 7 C≥6(R) R

22 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Multihalmazok szorzata A R.B S.B C 1 2 3 4 5 A B 1 2 B C 2 3 4 5 R S R X S

23 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Multihalmazok összekapcsolása A B 1 2 B C 2 3 4 5 A B C 1 2 3 R S R S

24 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Multihalmaz műveletek halmazokon. RUS R∩S R\S X Eredmény MH H R és S halmazok MH-multihalmaz H halmaz Definíció: Halmazokon végzett műveletek eredménye multihalmaz az egyesítés és a vetítés műveleteivel kapható.

25 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
B 1 2 3 4 5 6 A B 1 2 3 4 A B 3 4 5 6 V=RUS multihalmaz R S halmazok A B C 1 2 5 3 4 6 7 8 A B 1 2 3 4 U halmaz A,B(U) multihalmaz

26 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
A relációs modell további kiterjesztései Műveletek, amelyek nem részei a relációs adatmodell formális leírásának, a gyakorlatban viszont előfordulnak. Módosítások Sorok beszúrása relációba INSERT Sorok törlése relációkból DELETE Meglévő sorok módosítása, egy vagy több komponensének megváltoztatásával. UPDATE

27 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Összesítések Valódi adatbázis-lekérdezőnyelvek lehetővé teszik az ú.n. összesítő műveletek használatát COUNT relációk sorainak leszámlálása SUM oszlop-értékek összeadása AVG átlag-érték kiszámolása MIN oszlop minimum kiszámítása MAX oszlop maximum kiszámítása

28 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Nézetek Relációs algebrai kifejezés Program, amelyik kiszámolja az R relációt és ki is nyomtatja Képletek, amelyeknek addig nincs eredményük amíg igazi relációkra nem alkalmazzuk őket A nézeteknek gyakran neveket adunk, ezeket ugyanúgy hasznájuk más algebrai kifejezések argumentumaként, mint a valódi relációkat.

29 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Nullértékek NULL érték bizonyos szempontból ugyanolyan érték, mint a többi.Más szempontból nem is érték 2 reláció összekapcsolásakor 2 NULL komponens nem egyenlő Ismeretlen érték: tudom, hogy valamilyen értéknek kell ott lennie, de nem tudom, hogy melyik az Alkalmazhatatlan érték: Nincs olyan érték, aminek értelme lenne: hitves attribútum azok esetében, akik egyedülállók Visszatartott érték: Nem vagyunk feljogosítva, hogy ismerjük: titkosított telefonszám, személyi szám (bizonyos esetekben)


Letölteni ppt "ABR ( Adatbázisrendszerek)"

Hasonló előadás


Google Hirdetések