• Nem Talált Eredményt

Adatbázis-kezelési feladatok

In document Számítástechnikai versenyek (Pldal 41-44)

A Nemes Tihamér OKATV-n adatbázis-kezelési feladatokat csak a 2. korcsoportban (OKTV) találunk, azon belül is csak a II. és III. fordulóban. Ez nem is csoda, hiszen ha mélységeiben akarjuk a versenyzők adatbázis-kezeléssel kapcsolatos ismereteit felderíteni, bizony igen nehéz és összetett feladatokat kell felvonultatnunk.

Azok a tanulók képesek megbirkózni ilyen jellegű feladatokkal, akiknek a látásmódjába befészkelte már magát a magas szintű adatabsztrakció. Maga a témakör is összetett: táblák létrehozása és kapcsolataik; lekérdezések;

táblák összekapcsolása (join); rekordok szűrése, rendezése, csoportosítása; rekordok felvitele, törlése, frissítése;

űrlapok és jelentések stb.

Ennek megfelelően – és ez személyes észrevételünk – az alkalmazói versenyek adatbázis-kezelési feladatai is mintha egy kaptafára készülnének: adott egy adatmodell, ami alapján létre kell hozni az adattáblákat, adatokat kell importálni ezekbe, majd pedig bonyolultabbnál bonyolultabb lekérdezéseket elvégezni. A feladatok

„körítése” (azaz a témakör, amibe a feladatot ágyazzák) is általában nagyon „unalmas”; a diákokat a legkevésbé sem érdeklő témákról szólnak, mint például autóbuszok menetrendjéről, kínai cégek profitjáról vagy villamos erőművek fűtőanyagairól. Sajnos akár a Nemes Tihamér OKATV, akár a KöMaL adatbázis-kezelési feladatait lapozzuk végig, ilyen feladatokkal találkozunk; nehéz üdítő kivételre lelnünk. Éppen ezért egy tipikus feladatot elemzünk a továbbiakban.

5.1. Nemes Tihamér 2007, III. forduló 2. korcsoport

Mint előrevetítettük, egy igen nehéz és összetett feladatot ismerhetünk meg. A pontozása (40 pont a 150-ből) is ezzel áll arányban. Természetesen a versenyzőknek nem kötelező az összes részfeladatot megoldaniuk, azokra külön-külön kapnak pontokat, sőt azokon belül akár részpontokat is.

Versenyfeladat (Nemes Tihamér 2007, III. forduló 2. korcsoport 5. feladat).

Adatbázisunkban napelemekkel kapcsolatos adatokat tartunk nyilván. Tároljuk a gyártó és forgalmazó cégek adatait, a napelemek legfontosabb paramétereit, s hogy az egyes napelemeket milyen áron forgalmazzák az adott cégek. Négy adattáblát építünk, melyek a 3.16. ábrán látható attribútumokat és kapcsolatokat tartalmazzák.

3.16. ábra. Napelemgyártó cégek – Táblák

A.

Egy üres adatbázisban hozd létre a négy adattáblát, a köztük lévő kapcsolatokkal! Az adattípusok olyanok legyenek, hogy a napelem.xls fájlban lévő adatokat be lehessen tölteni az adattáblákba. Állítsd be, hogy az adatbázis-kezelő ellenőrizze a hivatkozási integritást! A kapott napelem.xls táblázat lapjain lévő adatokat illeszd be a táblákba!

B.

Írasd ki, hogy az egyes forgalmazóknál az egyes napelemek teljesítmény/ár aránya hogy aránylik az adott napelem átlagos teljesítmény/ár arányához (0-98% olcsó, 98-101%

átlagos, 101%-tól drága)!

C.

A napelemek típusa szerinti ABC sorrendben listázd ki, hogy a napelemeket melyik forgalmazó árusítja a legolcsóbban és mennyiért! A listában azok a napelemek is jöjjenek fel, akiket senki nem forgalmaz, de ott a forgalmazó neve és a minimális ár legyen üres!

D.

Készíts lekérdezést, ami kiírja azoknak a napelemeknek a típusát (legfeljebb egyszer), melyeket legalább két különböző áron forgalmaznak!

E.

Töröld azokat a gyártókat, akik nem gyártanak egyetlen napelemet sem!

(folytatás következik)

====== Feladat vége ======

Az A. feladat kapcsán kell a 3.16. ábrát értelmezni, a mezőtípusokat kikövetkeztetni, elsődleges és külső kulcsokat beállítani. Ezek után következhet az adatok Excel-fájlból való importálása.

A B-D. feladatokban igen összetett lekérdezéseket kell konstruálni; előkerülnek itt a beágyazott lekérdezések, a csoportosítások, táblák összekapcsolása (inner join, left/right join), számított mezők, aggregáló függvények (átlag, minimum). Megállapíthatjuk, hogy ezek az alfeladatok egészen nehezek, sőt már az értelmezésük is sokaknak gondot okozhat (tipikus példa erre a B. feladat). Persze közben ne feledjük, hogy ezzel a feladattal az OKTV döntőjében találkozhatunk!

Az E. feladat viszont nem okozhat komoly gondot, bár a törlő utasításban itt is egy beágyazott lekérdezést kell használni.

Versenyfeladat (Nemes Tihamér 2007, III. forduló 2. korcsoport 5. feladat).

(folytatás)

F.

Az épületfizikában a fal vagy a nyílászárók hőátbocsátási tényezőjét U-értéknek nevezik.

Ez azt mutatja meg, hogy ha 1˚C-kal hidegebb van kint, mint bent a házban, akkor 1 négyzetméter falon mennyi energia kerül leadásra bentről kifelé, azaz mennyi az energiaveszteség. Tegyük fel, hogy a házunk 36 cm vastagságú téglából épült, és kívülről nincs szigetelve. Ennek a falnak az U-értéke 0,33. Ez tehát annyit jelent, hogy ha pl. télen kint -10˚C van, bent pedig 20˚C, azaz 30˚C a hőmérséklet különbség, akkor a ház falának minden egyes négyzetméterén 0,33 30 = 9,9 Watt energiaveszteségünk van. Tegyük fel, hogy jó minőségű ablakokat és ajtókat vásárolunk, melyeknek az U-értéke 0,8. Ez pedig annyit jelent, hogy a nyílászárók minden egyes négyzetméterén 0,8 30 = 24 Watt energiaveszteségünk van ezen a hideg téli napon.

Készíts egy űrlapot (lásd a 3.17-a. ábrát), ahol a felhasználó megadhatja, hogy a háza összesen hány négyzetméternyi falból és hány négyzetméternyi nyílászáróból áll, ezeknek mennyi az U-értékük, és hogy adott napon hány fokkal szeretnénk melegebbet a házban, mint odakint. Ezek alapján egy gombnyomásra jöjjön fel (egy lekérdezés segítségével), hogy az egyes napelemtípusokból összesen hány darabot kellene felszerelnünk a ház tetejére, hogy egy átlagos napsütötte napon fedezzük a teljes energiaveszteséget, azaz csakis a napelemmel fűtsük be a házat! A tNapelem tábla Teljesítmény oszlopa adja meg Wattban egy darab napelem energiatermelését egy átlagos napsütéses napon.

3.17. ábra. Napelemgyártó cégek (folytatás) 3.17-a. Űrlap

3.17-b. Riport

G.

Készíts jelentést, ami kilistázza a gyártókat és a általuk gyártott napelemeket. Csak azokat kell megjeleníteni, amelyeket forgalmaz is valaki. A gyártónál jelenjen meg a napelemeinek az átlagteljesítménye két tizedesre kerekítve, és az, hogy hány fajta napelemet gyárt. Ezután következzen a listában az adott gyártó összes napelemének típusa, teljesítménye, és hogy mi az a legkedvezőbb ár, amiért az adott típusú napelemet megvásárolhatjuk. A riport formátuma a 3.17-b. ábrán látható legyen.

====== Feladat vége ======

Az F. feladat valamiképp kilóg a többi feladatrész közül. Érdekessége, hogy a szükséges lekérdezést nagyon könnyű megkonstruálni, az űrlapot nemkülönben; esetleg az űrlap mezőire való hivatkozásokat nem olyan könnyű mindebbe belefűzni. Ennek a feladatrésznek a pontozásából is kitűnik, hogy a feladat fő nehézségét annak megértése okozza (a megértésért 3 pont jár a 7-ből). Márpedig üdvözölendő, hogy az előző szokványosnak mondható, cikornyás lekérdezéseket megkövetelő feladatrészeken túl egy sokkal érdekfeszítőbb, konstruktívabb feladatot kell a versenyzőknek megoldaniuk, mely általános ismereteiket is bővíti, és mely típusú feladatokkal szakmai pályafutásuk alatt is többször találkoznak majd.

A G. feladatról is elmondható ez utóbbi, bár itt a jelentés mögött álló lekérdezés is jóval nagyobb (a B-D.

feladatokhoz hasonló) bonyolultságú.

In document Számítástechnikai versenyek (Pldal 41-44)