ELTE,
IP-08AB1G,
BSc Adatbázisok-1, 2014/2015/II.félév
Hétfő 14:00-15:30 PC3,
Kedd 12:15-13:45 és14:00-15:30 MI-labor
Előzetes információ az II.ZH-ról (12.gyakorlat)
Előző 11.gyak
AB1gyak
(főmenü)
Következő 13.gyak
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.)
-- Táblák tartalmának
megváltoztatása, a tranzakciókezelés
alapjai.
-- Megszorítások.
Nézettáblák.
2.feladattípus: Alapfogalmak (Tk 9.3-9.4.)
-- 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)
3.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.
4.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).
II.rész
Gépes
feladatok (csak az Oracle on-line dokumentáció
használható!)
(45 perc) A gépes feladatokra kapható 18
pontból legalább 6 pontot kell elérni.
3 feladat az
alábbi feladattípusokból:
1.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
2-3.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:
Előkészítés: Az sila.emp és sila.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.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.
2-3.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
a honlapra:
Hajas
Csilla
© ELTE IK Információs
Rendszerek Tanszék ill. Fel
a lap tetejére