Autó adatbázis

 

Készítsünk autók nyilvántartására alkalmas adatbázist. Használjuk erre a Microsoft Access adatbázis kezelőt.

 

Home-könytárunk Adatbázis mappájában hozzunk létre egy új adatbázist. Neve legyen: Auto. Indítsuk el róla az Acces-t. Ekkor a következő környezetet látjuk:

 

 

Az alkalmazás ablaka a szokásos felépítésű. Címke, menü, eszköztár, alul státuszsor. A dokumentumablak viszont már nagyban különbözik a Word és az Excel-nél megszokottól. Itt a dokumentumablakban az adatbázis különböző objektumait találjuk: táblák, lekérdezések, űrlapok stb., melyek mintegy belső menüként is szolgálnak, melyekkel megtekinthetjük az objektumokat. Az objektumok ablaka mellett, a kiválasztott típusú objektumok listája jelenik majd meg. Amíg nem hozunk létre egy objektumot, addig csak az objektumok létrehozását segítő eszközök, varázslók listáját láthatjuk. (Ha egy másik adatbázist is megnyitunk, akkor az egy új alkalmazásablakba kerül.)

 

Táblák

 

Az adatbázis legfontosabb tároló elemei a Táblák. Kettős kattintással hozzunk létre egy táblát Tervező nézetben:

 

 

         A táblázat egy-egy sorában egymással valamilyen kapcsolatban lévő adatokat tárolunk (legtöbbször valamilyen dolog különböző jellemzője). A táblázat egy-egy sorát rekordnak nevezzük, az oszlopokat pedig mezőknek. A táblázat bármely oszlopában, minden rekordnak ugyanolyan jellegű mezője található, melyet a mezőnévvel azonosítjuk. A mezőben lévő adatok a következő típusú lehet: szöveg, feljegyzés, szám, dátum/idő, pénznem, számláló, igen/nem, OLE objektum, hiperhivatkozás. Minden típusnál lehetséges további pontosítás, mely a mező méretére, alapértelmezett értékére, mint változó értéktartományára vonatkozik.

 

         A Kocsi AZ egy különleges mező, melynek neve: kulcsmező. Egy adattáblában csak egyetlen értéket vehet fel (nem ismétlődhet), mert az Access ez alapján indexeli a sorokat a gyorsabb keresés érdekében. A mező értéke akkor sem ismétlődhet, ha egy sort törlünk, és újra felveszünk egyet, a törölt mező kulcsa már nem használható, hiányozni fog. Új sor bevitelekor automatikusan generálódik, át nem írható. A kulcsmező segítségével hivatkozhatunk egy másik táblában az itt lévő sorra. A tábla szerkesztésének a végén a kulcsmezőt be kell állítani. Záráskor a táblának nevet kell adni.

 

         A Tábláknak kétféle nézetük van. Ha már a szerkezetét (mezőneveket) megírtuk és névvel kimentettük, akkor megnyithatjuk Tervező és Táblanézetben. Táblanézetben a megjelenése leginkább egy Excel táblázathoz hasonlítható, azzal a különbséggel, hogy itt az oszlopnevek a mezőnevek lesznek, a soroknak viszont nincs sorszáma. A táblázat csak annyi sort tartalmaz, ahány rekordba adatokat írtunk (és természetesen annyi oszlopa, ahány mezője van a rekordnak). A sorokon járkálhatunk, a kijelölt sort nyíl jelzi, a szerkesztés alatt állót egy ceruza. A sorokon a rekordléptetővel is mozoghatunk, akár sorszám alapján is ugorhatunk. A táblanézet:

 

 

         Ha a táblába adatokat írunk, akkor azt a beírás végén menteni nem kell, automatikusan mentődik. A tábla megjelenésében történt változtatást viszont menteni kell. A megjelenésben a következő változtatások lehetségesek: automatikus mezőszélesség, oszlopok megjelenítése, mezőnevek megváltoztatása, rendezés, szűrés.

 

         A táblázat szerkezetét bármikor módosíthatjuk. A mezőket átrendezhetjük (sorrendjüket módosíthatjuk). Szerkesztő nézetben újabb mezőket szúrhatunk be nemcsak a mezőnév lista végére, hanem közbe is. Mezőket törölhetünk is, de ez feltöltött tábla esetén adatvesztéssel járhat.

 

Készítsünk egy újabb táblát, melynek neve Települések:

 

 

Töltsük fel adatokkal.

 

 

         Bővítsük a Kocsik táblánkat a következő mezőkkel: Műszaki (dátum/idő), teljesítmény (szám), Adó (pénznem), Telephely AZ (hosszú egész). Tervezőnézetben ezt láthatjuk:

 

 

Hozzunk létre kapcsolatot a meglévő két táblánk között. A kapcsolat típusa legyen egy-a-többhöz kapcsolat. A kapcsolatot az Eszközök/Kapcsolatok táblán hozhatjuk létre. Húzzuk a Település AZ címkét a Telephely AZ fölé. A kapcsolatot egy törött-vonal jelzi. Az kulcsmezőnél 1-t, a másik mezőnél a végtelen jelét látjuk. Létrehozásnál válasszuk ki a Hivatkozási integritás megőrzését, majd a Kapcsolt mezők kaszkádolt frissítését és törlését is.

 

 

         Ha a kapcsolatot törölni szeretnénk, a kapcsolatot jelző vonalon kell kattintani, majd Delete gomb, vagy lokális menü segítségével törölhetjük.

 

 

 

         A bővítés után a Kocsik táblánk így néz ki, miután adatokkal feltöltöttük:

 

 

Lekérdezések

 

         Az adatbázisok egyik leghasznosabb objektumai a lekérdezések. A lekérdezések lehetnek:

- Választó,

- Kereszttáblás,

- Táblakészítő,

- Frissítő,

- Hozzáfűző és

- Törlő lekérdezések.

 

Ebben az adatbázisban mi csak Választó és Frissítő lekérdezést fogunk készíteni. A következő képen a Kocsik táblához írt lekérdezések listája látható:

 

 

Választó lekérdezések. Elsőként írjunk lekérdezést, mely a fekete színű kocsikat válogatja ki. A lekérdezés készítésekor először ki kell választani a lekérdezés alapjául szolgáló táblákat és lekérdezéseket. (Mivel a Táblák és Lekérdezések egy listában kell, hogy szerepeljenek, így nevük nem lehet azonos.) Lekérdezés létrehozása tervező nézetben varázsló első kérdése éppen erre vonatkozik:

 

 

A tervező nézet két jól megkülönböztethető részből áll. A felső részen a lekérdezéshez szükséges táblák és lekérdezések, míg alul az úgynevezett QBE rács látható. A lekérdezés a QBE rács celláinak feltöltésével valósul meg. A különböző lekérdezéseknél a rács tartalma némileg változik. A rácsban azt állíthatjuk be, hogy a lekérdezés milyen feltételek szerint válogasson a rekordok és mezők között.

 

 

         A lekérdezés eredményét futtatással (valójában SQL parancsok végrehajtásával) kaphatjuk meg. Az eredmény egy táblához hasonló, de csak a kérdezés feltételeinek megfelelő adatokat tartalmazza.

 

 

Kocsik kor szerint. Tervező nézet:

 

 

         A futtatás eredménye:

 

 

Fiatal kocsik. Tervező nézet:

 

 

         A lekérdezés futtatásának eredménye:

 

 

         Frissítő lekérdezés. Frissítő lekérdezéssel az adattáblák mezőinek értékét módosíthatjuk, állíthatjuk be. Írjunk lekérdezést, mely a kocsik adójának a kiszámítását végzi. Az adó mértékét a teljesítmény és egy szám (300) szorzataként kapjuk, melyet a frissítő lekérdezés minden rekordra végre fog hajtani, mert feltételhez nem fogjuk kötni a végrehajtást. A mező tartalmára a mezőnévnek szögletes zárójelben való megjelölésével hivatkozunk: [Teljesítmény]. Az Adó mezőtípusa legye Pénznem 0 tizedes helyek megjelenítéssel. Az Adószámítás frissítő lekérdezés tervező nézetben:

 

 

         A frissítő lekérdezés futtatáskor egy kérdést tesz fel:

 

 

Ha erre igennel válaszolunk, akkor a következő üzenetet kapjuk:

 

 

         Ebből láthatjuk, hogy hány rekordban lesz mezőtartalom átírva, és még ilyenkor is leállíthatjuk a módosítást, ha úgy ítéljük meg, hogy a módosítás nem helyes. Végül a futtatás eredménye:

 

 

Kihasználva, hogy a két meglévő táblánk között egy-a-többhöz kapcsolatot hoztunk létre, készítsünk egy olyan kéttáblás lekérdezést, melyben a gépkocsik rendszáma és telephelye jelenik meg. A Kocsik telephelye lekérdezés tervező nézetben, ahol a QBE rács Tábla sorában látható, hogy a mezők két táblázatból származnak:

 

 

 

A futtatás eredménye:

 

 

Amikor lekérdezés futtatását emlegetjük, akkor ezt azért tesszük, mert valóban egy utasítássorozat hajtódik végre akkor, amikor egy lekérdezés nevén kattintunk. Az utasítások az SQL lekérdező nyelv utasításai, melyet a Nézet menüpont, SQL nézet almenüjével tekinthetünk meg. A Fekete kocsik lekérdezés SQL nézetben (SELECT: kiválasztás + mezőnevek, FROM:  ahonnan történik a kiválasztás + hely, WHERE: ahol + feltétel, ORDER BY: rendezés + ami szerint, DESC: csökkenő sorrendben):

 

 

 

Űrlapok

 

         Az űrlapok az adattáblák feltöltésére illetve adatainak megjelenítésére szolgáló felületek. Az űrlapok változatos formájúak és tartalmúak lehetnek, melynek kialakításában varázslók állnak rendelkezésünkre. Az adatbázisunk két űrlapot fog tartalmazni, egyik egy oszlopos, a másik táblázatos elrendezésű lesz.

 

 

A Kocsik űrlap tervező nézetben:

 

 

         A Kocsik űrlap űrlapnézetben:

 

 

A Kocsik tábla űrlap tervezőnézetben:

 

 

A Kocsik tábla űrlapnézetben:

 

 

         Mindkét űrlap alkalmas a megjelenítés mellett az adatok bevitelére is.

 

Jelentések

 

 

Adatainkat gyakran nyomtatott formában is elő kell állítani. Ennek az elvárásnak a teljesítésére alkalmas, a formázási lehetőségeket is biztosító Jelentéskészítés. Készítsünk jelentést a gépkocsik adójáról, mely tábla tartalmazza a gépkocsi Gyártmányát, Típusát, Rendszámát és Adóját, valamint a befolyt adók összegét. Az elkészítéséhez Jelentés varázslót használjunk:

 

 

A jelentés táblázatos elrendezésű legyen:

 

 

Az elkészült Jelentés:

 

 

         Nyissuk meg a jelentést tervező nézetben. A Kocsik címet helyezzük középre, húzzuk alá és bővítsük Kocsik adója szövegre, valamint a jelentéslábban egy beviteli mező segítségével (tulajdonságlapja beállításaival) hajtsuk végre az adók összegzését:

 

 

Az elkészült jelentés:

 

 

 

Adatbázis táblájának feltöltése Excel-ből

 

         Hozzunk létre egy Érettségi nevű adatbázist és Importáljuk az Érettségi.xls állomány adatait egy Érettségizők nevű táblába: