ELTE, IP-08abctAB1G, BSc Adatbázisok-1, 2013/2014/II.félév
Előzetes információ az II.ZH-ról

   
II.ZH témaköre:

I.rész  Papíros feladatok (Semmilyen segédeszköz nem használható!)
(45 perc) A papíros feladatokra kapható 24 pontból legalább 8 pontot kell elérni.
               4 feladat az alábbi négy feladattípusból:
1.feladattípus: Alapfogalmak (Tk 6.5-6.6., 7.1-7.4., 8.1-8.2., 9.1-9.2.)
     -- Táblák tartalmának megváltoztatása, a tranzakciókezelés alapjai.
     -- Megszorítások. Nézettáblák.
     -- Tárolt eljárások és függvények (PSM vagy PL/SQL)
     -- Kurzorral történő módosítások (PSM vagy PL/SQL)
2.feladattípus: E/K diagram átírása relációs modellre (Tk 4.5-4.6.)
     -- Adott E/K diagram átírása relációs modellé:
     -- egyedhalmazok és kapcsolatok átírása relációkká, összevonások
     -- gyenge egyedhalmazok kezelése, valamint
     -- osztályhierarchia ("isa") átalakítása relációkká (a háromféle megközelítésben).
3.feladattípus: Lekérdezések kifejezése Datalogban (Tk 5.3-5.4.)
     -- Lekérdezések kifejezése Datalogban és
     -- a szabályok biztonságosságának ellenőrzése.
     -- Relációs algebrai kifejezések átírása Datalogba.
4.feladattípus  - Rekurzió (Tk 10.2.)
     -- Rekurzív lekérdezések kifejezése rekurzív Datalogban és
     -- WITH RECURSIVE utasítással SQL3 szabványban.
   

II.rész Gépes feladatok (csak az Oracle on-line dokumentáció használható!)
(45 perc) A gépes feladatokra kapható 24 pontból legalább 8 pontot kell elérni.
               4 feladat az alábbi négy feladattípusból:
1-2.feladattípus: Teljes SQL nyelv
- SQL DDL (táblák, megszorítások, nézetek),
- SQL DML (insert, delete, update),
- SQL SELECT további lehetőségei, például CONNECT BY
3-4.feladattípus: PL/SQL
- PL/SQL hivatkozási és komplex típusok, (implicit és explicit) kurzorok,
- PL/SQL tárolt eljárások és függvények, kivételkezelés
   
Gépes mintafeladatsor a II.ZH-hoz:
Az emp és dept táblákból készítsünk saját myemp és mydept táblákat.
A további feladatok ezekre a myemp és mydept táblákra vonatkoznak.
A feladatok megoldása során létrehozhat és használhat megfelelő nézettáblákat.
    
1-2.feladat SQL DDL (create table|view) és DML (select, insert, delete, update)
Írjon SQL DDL és DML utasításokból álló script programot, amely... folyt.a)... stb.
A táblák tartalmának változásáról (vagyis a beillesztés, a törlés és az adatmódosítás
sikerességéről listázással győződjön meg, majd állítsa vissza az eredeti táblatartalmat!
   
a) A myemp táblából töröljük a legjobban fizetett Dallas-i dolgozót.
b) A myemp táblában növeljük meg a 'BLAKE' nevű dolgozó beosztottjainak
    fizetését az átlagfizetésük 20%-ával.
c) Készítsünk egy nézettáblát, amelyben képezzük osztályonként az összfizetést,
    majd ennek a felhasználásával adjuk meg, hogy mely osztályokon nagyobb
    az osztályonkánti összfizetések átlagánál az összfizetés.
d) Hierarchikus lekérdezéssel (CONNECT BY) jelenítsük meg a myemp táblából
    'FORD' beosztottjait, és jelöljük a szintet is: a közvetlen beosztottjára legyen 1,
     ha a közvetlen beosztott közvetlen beosztottja 2, stb) az összes beosztottjára.
    
3-4.feladat PL/SQL (kurzorok, tárolt eljárások és függvények, kivételkezelés)
   
a) Írjon PL/SQL függvényt, amely a myemp tábla alapján kiszámolja paraméterként
    megkapott nevű dolgozónak és a közvetlen beosztottjainak az átlagfizetését.
    Ha az adott dolgozónak nincs beosztottja, akkor értelemszerűen a dolgozó
    fizetését adja vissza. Hívjuk meg a függvényt 'BLAKE'-re.
   
b) Írjon PL/SQL eljárást, amely a myemp táblában megnöveli minden Dallas-i
    telephelyű dolgozók fizetését a saját fizetésének a 20%-ával, feltéve, hogy
    a fizetése 3000 USD alatt van. Ha 3000 USD-nél több lenne, akkor csak
    írjon ki egy szöveget.
   
Vissza az AB1 gyakorlat oldalára             Vissza a Kezdőlapra