Feladat: I.404 Korcsoport: - Nehézségi fok: -
Füzet: 2016/május, 290 - 292. oldal  PDF  |  MathML 

A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre.

A rokonsági fokok ábrázolása nemcsak grafikusan családfával, hanem adatbázis-kezelővel is megoldható. (Erre találhatunk példát a 2006. februári emelt szintű érettségi feladatsorban is.) Ezúttal feladatunkban a Kiss‐Nagy család rokonsági viszonyait fogjuk adatbázis-kezelővel elemezni. Az adatbázisban tárolt családfarészletet a következő ábra szemlélteti:

 

 

Az adatokat a csaladtagok.txt tabulátorral tagolt, UTF8 kódolású szövegfájl tartalmazza, az első sorban a mezőnevek találhatók.
1.Készítsünk új adatbázist i404 néven. A mellékelt adatállományt importáljuk az adatbázisba csaladtagok néven. Beolvasáskor állítsuk be a megfelelő adatformátumokat és a kulcsot.


csaladtagok (id, nev, ferfi, anya, tars)
idA családtag azonosítója (szám), ez a kulcs.nevA családtag neve (szöveg). Elképzelhető, hogy két családtag neve azonos.ferfiA családtag neme (logikai).(Ha a családtag  férfi, akkor  igaz; ha  nő,  akkor  hamis).anyaA családtag édesanyjának azonosítója vagy üres (szám).ferjA nőnemű családtag férjének azonosítója vagy üres (szám).  

Készítsük el a következő feladatok megoldásait. Az egyes lekérdezéseknél ügyeljünk arra, hogy mindig csak a kért értékek jelenjenek meg és más adatok viszont ne. A megoldásokat a zárójelben lévő néven mentsük el.
Az adatbázis szerkezete a valódi családi kapcsolatoknak csupán egyszerűsített formája, amely a valós viszonyok leírására nem teljesen alkalmas. Ezért feltételezzük, hogy a családban nem volt válás, újraházasodás, nincsenek féltestvérek. A feladatmegoldás során több esetben is szükségünk lehet arra, hogy az adattáblát több példányban használjuk fel.
2.Adjuk meg lekérdezés segítségével a férfiak és a nők számát. (2ffino)
3.Lekérdezéssel listázzuk ki a házaspárokat. Gondoskodjunk arról, hogy minden házaspár csak egyszer jelenjen meg. (3hazasparok)
4.Kérjük be egy családtag nevét, és adjuk meg anyjának és apjának nevét lekérdezés segítségével. Ha több azonos nevű családtag van, valamennyi adata jelenjen meg. (4apaanya)
5.Listázzuk lekérdezés segítségével a testvéreket. A felsorolásban minden testvérpár pontosan egyszer jelenjen meg. (5testverek)
6.Lekérdezés segítségével határozzuk meg az unokák anyai és apai nagyanyját a mintának megfelelően. Ha a két nagyszülő egyike sem szerepel az adatbázisban, akkor az unoka neve se jelenjen meg. (6nagyi)
 

 

7.Listázzuk ki lekérdezés segítségével az unokatestvéreket. Gondoskodjunk arról, hogy minden pár pontosan egyszer jelenjen meg. (7unokateso)
8.Készítsünk jelentést, amely tartalmazza az adatbázisban szereplő családtagokat névsorban, valamint (ha szerepel az adatbázisban) anyjuk, férjük, feleségük nevét. A  megoldást lekérdezés segítségével készítsük elő. A cím és az oszlopfejléc szövege a mintának megfelelően jelenjen meg. (8lista)

 

 

Beküldendő egy tömörített i404.zip állományban az adatbázis, valamint egy rövid dokumentáció, amelyből kiderül az alkalmazott adatbázis-kezelő neve, verziószáma.