Adatbázisok használata

Slides:



Advertisements
Hasonló előadás
Koordináták, függvények
Advertisements

10. gyakorlat SQL SELECT.
Algebrai struktúrák.
Természetes számok 0, 1, 2, 3, ..., 24, 25, ..., 1231, 1232, ..., n, ...  = {0, 1, 2, 3, ..., n,...} a természetes számok halmaza Műveletek: összeadás.
KÉSZÍTETTE: Takács Sándor
Adatbázisrendszerek elméleti alapjai 2. előadás
Lekérdezések SQL-ben Relációs algebra A SELECT utasítás
ADATBÁZISOK.
Adatbázis rendszerek I Relációs kalkulus Általános Informatikai Tsz. Dr. Kovács László.
Anyagadatbank c. tárgy gyakorlat
Adatbázis-kezelés.
2. GYAKORLAT E-K modellből relációs adatbázisséma.
Adatbázis kezelés. Hierarchikus modell Legrégebbi modell, ma már nem használatos. Az adatokat fákban tároljuk, ahol minden pont a szegmens adatokat, és.
Az egyed-kapcsolat modell
Halmazok, műveletek halmazokkal
Microsoft Access V. Készítette: Rummel Szabolcs Elérhetőség:
Egy f  R[x] polinom cS -beli helyettesítési értéke
Algebrai struktúrák 1.
Csoport részcsoport invariáns faktorcsoport részcsoport
Gyűrűk Definíció. Az (R, +, ·) algebrai struktúra gyűrű, ha + és · R-en binér műveletek, valamint I. (R, +) Abel-csoport, II. (R, ·) félcsoport, és III.
4. VÉGES HALMAZOK 4.1 Alaptulajdonságok
Számhalmazok.
Algebra a matematika egy ága
Adatbázis rendszerek II.
Halmazok, relációk, függvények
1.3 Relációk Def. (rendezett pár) (a1 , a2 ) := {{a1} , {a1 , a2 }} .
Reprezentációs függvény. Adva egy adattípus absztrakt és konkrét specifikációja: d a = ( A, F, E a ); d c = ( C, G, E c ); A = {A 0,..., A n };C = {C 0,...,
Lekérdezésfordító Adatbázisok 2.. Elemzés Lekérdezés Elemző Előfeldolgozó Logikai lekérdezéstervet generáló Lekérdezésátíró Jónak vélt logikai lekérdezésterv.
Lekérdezésfordító Adatbázisok tervezése, megvalósítása, menedzselése.
Halmazok Összefoglalás.
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
SQL, Relációs adatmodell
Relációs algebra. A relációs adatbáziskezelő nyelvek lekérdező utasításai a relációs algebra műveleteit valósítják meg. A relációs algebra a relációkon.
*** HALMAZOK *** A HALMAZ ÉS MEGADÁSA A HALMAZ FOGALMA
Halmazműveletek.
Halmazok Tanítás.
Az SQL nyelv. SQL Az SQL utasításait két fő csoportba szokták sorolni: DDL (= Data Definition Language): adatstuktúra definiáló utasítások. DML (= Data.
11. tétel Adatbázis táblái közti kapcsolatok optimalizálása
Adatbázis kezelés. Az adatbázis tágabb értelemben egy olyan adathalmaz, amelynek elemei – egy meghatározott tulajdonságuk alapján – összetartozónak tekinthetők.
Adatbázis kezelés.
Adatbázis-kezelés.
1. MATEMATIKA ELŐADÁS Halmazok, Függvények.
Lineáris algebra.
Adatbázisok gyakorlat
Adatbázis-kezelés.
Adatbázis alapfogalmak
Relációs adatbázissémák
Relációs algebra Relációs sémák tervezése
Az informatika logikai alapjai
1 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda ABR ( Adatbázisrendszerek) 1. Előadás : Műveletek a relációs medellben 1.0 Bevezetés. A.
Adatbázis-kezelés. Alapfogalmak Adat: –észlelhető, felfogható ismeret –jelsorozat –valakinek, vagy valaminek a jellemz ő je –tény, közlés Információ:
Adatbáziskezelés. Adat és információ Információ –Új ismeret Adat –Az információ formai oldala –Jelsorozat.
Halmazok Érettségi követelmények:
1 Relációs kalkulusok Tartománykalkulus (DRC) Sorkalkulus (TRC) - deklaratív lekérdezőnyelvek - elsőrendű logikát használnak - relációs algebra kifejezhető.
Adatbázisszintű adatmodellek
Adatbázisok használata
Egyed/kapcsolat modell
Adatbázisok 1. SQL (alkérdések). Az IN használata Emlékezzünk vissza: Az IN után szereplő multihalmaz elemei lekérdezéssel is megadhatók SELECT nev FROM.
SQL aggregálás, csoportosítás és összekapcsolás Adatbázisok 1.
Többértékű függőségek
Alapfogalmak Adat: rögzített ismeret
ABR ( Adatbázisrendszerek)
Relációs algebra lekérdezések optimalizációja
Relációs adatmodell, normálformák
1.3 Relációk Def. (rendezett pár) (a1 , a2) := {{a1} , {a1 , a2 }} .
Adatbázis-kezelés 2. Relációs adatbázisok.
Adatbázisok használata
Adatbázisok használata
Többértékű függőségek
Relációs algebra lekérdezések optimalizációja
Előadás másolata:

Adatbázisok használata Relációs adatmodell Adatbázisok használata

Relációs adatmodell Egy reláció sémája: Sör (név, ország). Az adatbázis sémája: Sör (név, ország), Bár (név, város, tulaj), Felszolgál (sör, bár, ár). Sör Bár attribútumok név ország Soproni Magyar Kozel Cseh Dreher Német név város tulaj Makk 7-es Budapest Géza Lórúgás Győr Ica Felszolgál előfordulás sör bár ár Kozel Makk 7-es 320 Dreher 400 Soproni Lórúgás 280 sorok

Relációs adatmodell I. (Ismétlés: adott X1,…, Xn alaphalmazok esetén a ρ  X1 … Xn részhalmazt relációnak nevezzük.) A relációs adatmodellben az adatokat kétdimenziós táblákban (relációkban) tároljuk. A reláció fejrészében találhatók az attribútumok. Minden attribútumhoz hozzátartozik egy értékkészlet. A reláció neve és a reláció-attribútumok halmaza együtt alkotják a relációsémát. A séma egy adatmodellben általánosságban azt adja meg, hogy egy-egy adatelem milyen „formájú” adatokat tárol. Egy-egy reláció soroknak egy halmaza. Halmaz: tehát nem számít a sorrend, valamint egy elem csak egyszer szerepelhet.

Relációs adatmodell II. A reláció sorainak halmazát előfordulásnak nevezzük. ρ  X1 … Xn esetén az attribútumok értékkészlete adja az Xi alaphalmazokat (1  i  n), egy-egy előfordulás pedig egy-egy relációnak „feleltethető meg”. Az attribútumok sorrendje tehát nem rögzített a relációsémában. Egy-egy előfordulás ábrázolása esetén viszont rögzítésre kerül.

Relációs adatmodell II. Az adatbázis tulajdonképpen relációk halmaza. A megfelelő relációsémák halmaza adja az adatbázissémát, a hozzá tartozó előfordulások pedig az adatbázis-előfordulást. Egy sor elemeit mezőnek (komponens) nevezzük. Minden mező csak atomi értéket vehet fel. Léteznek bonyolultabb adatmodellek is, ahol egy mező értéke lehet halmaz, lista, tömb, rekord, referencia stb. Megjegyzés: a gyakorlatban sokszor megengedik a sorok ismétlődését, hiszen az ismétlődések megszüntetése nagyon időigényes.

Mire kell odafigyelni? Példa 1 Példa 2 Mivel attribútumok halmazáról van szó, a Példa 1 és Példa 2 relációk nevüktől eltekintve azonosak. A B C a b c d B C A b c a d Példa 3 Példa 4 Mivel sorok halmazáról van szó, a Példa 1 és Példa 3 relációk nevüktől eltekintve azonosak. A B C c b d a A B C c b d a Ebben a modellben Példa 4 nem reláció.

Példa megszorításra Az attribútumok egy halmaza egy kulcsot alkot egy relációra nézve, ha a reláció bármely előfordulásában nincs két olyan sor, amelyek a kulcs összes attribútumának értékein megegyeznének. Ilyen egy attribútumú kulcs például a személyiigazolvány-szám vagy a TAJ szám. Megjegyzés: egy kulcs nem feltétlenül egy attribútumból áll. Például a bár táblában valószínűleg az a jó, ha a név és a város együtt alkotják a kulcsot. A kulcsot aláhúzás jelöli: Bár (név, város, tulaj).

Vigyázat! Ennél a konkrét előfordulásnál választhatnánk a nevet kulcsnak, sok esetben viszont ez nem megfelelő, hiszen több különböző ember is él ugyanazzal a névvel. név telefon Grasshaus Ignác 20-234-4567 Menyhért Lipót 20-564-2345 Bereg Anna 20-345-1231

Mit nevezünk algebrának? Egy algebra általában műveleteket és atomi operandusokat tartalmaz. Az algebra lehetővé teszi kifejezések megfogalmazását az atomi operandusokon és az algebrai kifejezéseken végzett műveletek alkalmazásával kapott relációkon. Fontos tehát, hogy minden művelet végeredménye reláció, amelyen további műveletek adhatók meg. A relációs algebra atomi operandusai a következők: a relációkhoz tartozó változók, amelyek véges relációt vagy attribútum neveket fejeznek ki konstansok.

Relációs algebra (műveletek) I. Projekció (vetítés). Adott relációt vetít le az alsó indexben szereplő attribútumokra. Példa: Πsör, bár (R) sör bár ár Kozel Makk 7-es 320 Dreher 400 Soproni Lórúgás 280 sör bár Kozel Makk 7-es Dreher Soproni Lórúgás

Relációs algebra (műveletek) II. Szelekció (kiválasztás). Kiválasztja az argumentumban szereplő reláció azon sorait, amelyek eleget tesznek az alsó indexben szereplő feltételnek. R(A1, …, An) reláció esetén a σF kiválasztás F feltétele a következőképpen épül fel: atomi feltétel: Ai θ Aj, Ai θ c, ahol c konstans, θ Є {=, <, >}, ha B1, B2 feltételek, akkor  B1, B1 B2, B1 B2 is feltételek. Példa: σár>350  sör= ’ Soproni’ (R) (a , ,  műveleteket ezentúl értelemszerűen használjuk) sör bár ár Kozel Makk 7-es 320 Dreher 400 Soproni Lórúgás 280 sör bár ár Dreher Makk 7-es 400 Soproni Lórúgás 280

Relációs adatmodell (műveletek) III. Mivel sorok halmazáról van szó, így értelmezhetők a szokásos halmazműveletek: az unió, a metszet és a különbség. A műveletek alkalmazásának feltétele, hogy az operandusok attribútumai megegyezzenek és azonos sorrendben szerepeljenek. Példa: R – S: R S sör bár Kozel Makk 7-es Dreher Soproni Lórúgás sör Bár Kozel Makk 7-es Soproni Lórúgás sör bár Dreher Makk 7-es

Természetes összekapcsolás Természetes összekapcsolás: R(A1,…,An), S(B1,…,Bm) sémájú táblák esetén R |X| S azon sorpárokat tartalmazza R-ből illetve S-ből, amelyek R és S azonos attribútumain megegyeznek. Az összekapcsolás asszociatív, azaz: (R1 |X| R2) |X| R3 = R1 |X| (R2 |X| R3), és kommutatív, azaz : R1 |X| R2 = R2 |X| R1. A B C a b c d g e f r B D b e d r A B C D a b c e d g r |X|

Relációs algebra (műveletek) IV. A Descartes-szorzat is értelmezhető. Itt természetesen nem fontos az attribútumok egyenlősége. A két vagy több reláció azonos nevű attribútumait azonban meg kell különböztetni egymástól. Példa: R  S. R S A B C a b c d e g B D b r q s A R.B C S.B D a b c r q s d e g

Relációs algebra (műveletek) V. Egyes esetekben szükség lehet egy adott reláció attribútumainak átnevezésére. A ρS(C, D, E) (R) az R(A, B, C) reláció helyett veszi az S relációt, melynek sorai megegyeznek R soraival, az attribútumai pedig rendre C, D, E. Ha az attribútumokat nem szeretnénk átnevezni, csak a relációt, ezt ρS(R)-rel jelöljük.

Feladatok I. A feladatokat a Szeret (név, gyümölcs) relációssémájú tábla fölött értelmezzük. 1. Melyek azok a gyümölcsök, amelyeket Micimackó szeret?   2. Melyek azok a gyümölcsök, amelyeket Micimackó nem szeret? (de valaki más igen)   3. Kik szeretik az almát?   4. Kik nem szeretik az almát? (de valami mást igen)   5. Kik szeretik az almát vagy a körtét? (megengedő vagy)   6. Kik szeretik az almát is és a körtét is?   7. Kik azok, akik szeretik az almát, de nem szeretik a körtét?   8. Kik szeretnek legalább kétféle gyümölcsöt? 9. Kik szeretnek legalább háromféle gyümölcsöt? 10. Kik szeretnek legfeljebb kétféle gyümölcsöt? 11. Kik szeretnek pontosan kétféle gyümölcsöt?

Feladatok II. Kik szeretik legalább azokat a gyümölcsöket, mint Anna? Kik szeretik legfeljebb azokat a gyümölcsöket, mint Anna? Kik azok a személy-személy párok, akik pontosan ugyanazokat a gyümölcsöket szeretik?

Relációkra vonatkozó megszorítások A megszorításokat kétféleképpen fejezhetjük ki (legyenek R és S relációs algebrai kifejezések): R = Ø, azaz R-nek üresnek kell lennie, R  S, azaz R eredményének minden sorának benne kell lennie S eredményében. A két megszorítás kifejezőerő szempontjából azonos: R  S így is kifejezhető: R – S  Ø, míg R = Ø, R  Ø alakban is írható.

Hivatkozási épség megszorítás Hivatkozási épség megszorítás: 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 meg kell, hogy jelenjen. Példa: a Sör(név, ország), Felszolgál(sör, bár, ár) táblák esetén megköveteljük, hogy csak olyan sörök szerepeljenek a Felszolgál táblában, amelyek a Sör táblában is szerepelnek. A megszorítás: sör (Felszolgál)  név (Sör). Általában: A (R)  B (S).

Kulcs és egyéb megszorítások Példa: a Bár(név, város, tulaj) relációban a (név, város) attribútumhalmaz kulcs. σB1.név=B2.név B1.város=B2.városB1.tulajB2.tulaj(B1B2) = Ø Tegyük fel, hogy csak a budapesti vagy madridi bárokkal szeretnénk foglalkozni. Ennek kifejezése: σ(város 'Budapest') (város 'Madrid' (B) = Ø.