A számítógépes alkalmazások tekintélyes részére jellemzõ, hogy fõ feladatuk a nagy mennyiségû szerkezettel rendelkezõ (strukturált) adatokkal végzett különbözõ feladatok végrehajtása. Speciálisan ezekre a feladatokra fejlesztették ki az adatbázis-kezelõ programokat. PC-s területrõl ismertebbek a Clipper, FoxBase, FoxPro, DBase, Access stb., és a jó öreg SuperBase64 (C64).

Persze Amigára is létezik számtalan igen jó adatbázis-kezelõ program. E terület (ue. táblázatkezelõk) szakemberei szinte már különálló szakmát képviselnek a számítógépes társadalmon belül, hisz csak ezekbõl meg lehet élni. Ezért akit érdekel a téma, de nem tud PC-hez férni, bátran ajánlom az Amigás adatbázis-kezelõket, mert tanulni tökéletesen megfelelnek (sõt!). A legelterjedtebb programok Amigán a SuperBase, DataBase, AmigaBase, GoAmiga, de ezenkívül töménytelen mennyiségû, speciálisan egy-egy feladatra írt adatbázis-kezelõk (vagy inkább nyilvántartók) léteznek. Utóbbiak közül említésre méltó például a VideoBase (kazetta, film), IMBD (PD zóna 95/3), DiskCatalog (lemez) és még sorolhatnám. Mivel a GURU-ban nem volt még a témával kapcsolatos (Amiga) cikk, ezért bemelegítésként szeretnék pár lényegi fogalmat tisztázni.

Mik az adatbázis-kezelõk legfontosabb funkciói? Elõször is az adatállományok létrehozása, feltöltése adatokkal ezek módosítása illetve törlése. Adatok sorba rendezése valamilyen szempont szerint, valamint bizonyos feltételeknek eleget tevõ adatok kikeresése, kiválasztása és kinyomtatása.



Mi az adatbázis?
Gondoljunk csak egy raktári nyilvántartásra, vagy egy telefonkönyvre. Ezeknél nagy mennyiségû, de egységes struktúrájú adatokkal állunk szemben. Az, hogy egységes legyen az adattömeg lényeges szempont, nézzük például a telefonkönyvnél mik is az adatok. Név, cím, foglalkozás, telefonszám, vagyis összesen négy különbözõ de szorosan összetartozó, azaz egy személyre vonatkozó adatok, ún. mezõk (Field) vannak. A sok személyi adat (rekord) alkotja adatbázisunkat, táblázatunkat. A táblázat szerkezetét az alkotó mezõk száma, hossza, és a benne lévõ adatok típusa határozza meg. Típusok a karakteres, numerikus, és dátum lehetnek, hosszuk 255 karakter lehet maximálisan.



Hogy kezdjük el?
Gondoljuk át milyen típusú adatokat akarunk majd bevinni, a mezõk definiálásakor legyünk elõrelátóak, mivel kereséskor illetve rendezéskor sok felesleges munkát spórolhatunk meg az ésszerû definiálással. Már telefonkönyv esetén is sokféle szempont szerint kereshetünk. Például szeretnénk egy nõismerõsünk telefonszámát megkeresni aki a VII. kerületben lakik és keresztneve Anna. Ilyenkor ún. szûrõt, filtert alkalmazunk, ami csak azokat az adatokat engedi át, amely az adott szempontoknak eleget tesznek. Ebbõl következik, hogy esetünkben érdemes az irányítószámnak és a keresztnévnek külön mezõt definiálni. A másik adatbázis „szolgáltatás“ az állományok Indexelése. Ezzel határozzuk meg melyik mezõ(k) szerint rakja sorba, indexelje adatállományunkat. Egy ésszerûen indexelt állományban sokkal gyorsabb a keresési mûvelet. Egy-egy adatfájlhoz akar több index is tartozhat (többszörös index), de egynek mindig kitüntetett szerepe van (fõ index). Egyszerre több adatbázist is megnyithatunk, így lehetõségünk van az adatbázisok közti kapcsolatok kialakítására.

Ezzel be is fejezem a „bemelegítést“, jó tanácsként a bonyolultabb adatbázisoknál fontos a precíz elõrelátó tervezés. A téma elméleti szinten is igen érdekes. Aki szeretne alaposabban elmélyedni az adatbázisok rejtelmeiben elég bõ szakirodalmat találhat.

SuperBase Professional V4.0 (1.30)
Az Oxxi Inc. 1990-1994-es programja (2 lemez). Futtatásához minimálisan megteszi már egy A500 1 MB-os + külsõdrive-os konfiguráció. Mivel kultúr (rendszer) program, így remekül mûködik mindenféle képfelbontásban támogatja az AGA nyújtotta lehetõségeket, és persze az ARexx támogatás sem maradt ki. Adatokat importálni ASCII kívül a DBase II/III III+, Excel 2.1, és a Lotus 1-2-3 formátumban tudja. A program két különálló, mégis összetartozó (egymásból is hívható) editorból áll, a SBase4 Pro, és a Designer Pro. Utóbbi egy „egyszerû“ rajzprogram, képernyõ-formátum generátor, amivel az SB4 száraz számbeli adataihoz, illetve az adatbevitelhez kellemes grafikus megjelenítést tervezhetünk. Így az adatbeviteli vagy keresési képernyõnk barátságosabb, érthetõbb, egyértelmûbb, beszédesebb és szebb lesz. A kultúrált Amiga stílusú képszerkesztést megkönnyíti a beépített buttonok sokasága. Mint mindegyik adatbázis-kezelõnek a SB4-nek is különálló nyelve van, esetünkben a DML (Database Management Language).

Miért kell egy adatbáziskezelõ-be nyelv?
A DML segítségével olyan programot tudunk készíteni amit másként nem, vagy csak igen körülményesen, sok menüparancs kiválasztásával tudnánk elérni. Külön editorral rendelkezik, mindamellett használata nem kötelezõ ha csak 1-2 utasítást szeretnének kiadni. Ilyenkor használjuk az ún. command menüt (Amiga+A). A DML (szerintem) túlmutat a PC-n ismert DBase, illetve FoxPro nyelvein. Leginkább egy fejlett Basic nyelvre hasonlít a közel 200 utasításával. Egyetlen hibája, hogy fordításra (compiler) nincs lehetõség.

Kezdjük el, és nyissuk meg (hozzuk létre) elsõ adatbázisunkat. A mûveletsort a New/File menüvel kezdjük, majd az egyes mezõk (Field) definiálása következik. Szép sorban határozzuk meg a mezõk nevét, típusát (text, numeric, date) és a hosszát. A definíciós ablakban látható kapcsolók (External, required, read only, valida-ted…) segítségével a kiválasztott mezõkön különféle mûveletek (szûrések) végezhetõk. Validated-del meghatározható, hogy adatbevitelekor a definiált feltételeknek nem megfelelõ adatot mintegy visszadobja módosításra, nem engedi bevinni. Vegyük figyelembe az adatbevitel sorrendjét, ne olyan mezõhöz rendeljünk feltételt amit csak a késõbbiek során viszünk be. Feltételek az OR, NOT, AND, ,+, -, * stb. mellett fõszereplõ a LIKE utasítás.

Nézzünk erre pár példát.
Hely LIKE =“Budapest“ – csak Budapest írható a mezõbe.
Irányítószám > 1999 OR Hely =“Budapest“ – ir.sz. és Budapest korrekt-e.

Validated-hez hasonlóan mûködnek a Calculation és a Constants beállítások. A másik érdekes kapcsoló az External. Ha egy mezõhöz rendeljük akkor mezõbe írt adatnak egy elérhetõ fájlnévre (típusa IFF, GIF, PCX) kell mutatnia. Az IFF fájlok lehetnek hangok, animációk, és képek, ezek a SB4 editorából a Record/Next-Previous External menükkel meg is nézhetõek, illetve meghallgathatóak. Az External, designer és a DML használatával készíthetünk képi (hangos) adatbázist (Multimédia). Ha végeztünk a mezõkkel a SB4. következõ kérdése az Index mezõ(k)-re vonatkozik (normal, unique). Az indexek és a mezõk utólagos módosítása bármikor lehetséges, de a mezõknél (értelemszerûen) ne a típust módosítsuk. Fizikailag csak most, az indexelés után jön (jönnek) létre az SB4 adatfájlok.

SB4. Fájl típusok.
.sbf adatbázis
.sbd field definíció
.sbk Funkció bill. kiosztása
.sbp program (DML) fájl
.sbq Query (szûrõ fájl)
.sbt text fájl
.sbu update fájl
.sbv Designer fájl
.001-999 indexelt adat

Ha DBase fájlokkal szeretnénk dolgozni (pl. egy PC-s AngolMagyar szótár .DBF adataival) két lehetõség közt választhatunk. Az egyik szerint Open/DBase menüvel megnyitjuk a Dbase állományt, de ilyenkor nem tudjuk indexelni az adatbázist, csak a már meglévõ DBase adatokhoz tartozó index fájlt (.NDX) tölthetünk be (open/index). A másik lehetséges út a Process/Import menüben adódik a DBase kapcsoló kiválasztásával. Ilyenkor közvetlenül nyitjuk meg a DBase adatokat (.DBF), majd ezt követõen mi végezhetjük el az indexelést.

Adatok bevitele, editálása, valamint az alsó panel nem hiszem, hogy valakinek problémát okozna, ezért nézzük inkább a szûrõket (Query). Mint említettem a szûrõ(k) arra szolgál, hogy csak az adott szempontnak eleget tevõ adatokat engedje át (lássuk). A Process/Query/Edit menüvel mindezek végrehajthatóak, de ezen kívül sok más hasznos lehetõséget is találhatunk ebben az ablakban.

Fields – melyik mezõket kívánjuk látni
Report – matematikai mûveletek
Filter – szûrések
Order  – rendezés ABC (fordított) és hossz szerint

Filter használata – Név LIKE „A*“ (csak „A“ betûvel kezdõdõ nevek)
Query szerint válogatott adatainkat megnézhetjük (Screen), kimenthetjük (Disk, File), kinyomtathatjuk (Print) és a Say segítségével meg is hallgathatjuk.

Ezzel a SB4. elõrészét be is fejezném, bár tudom sok mindenrõl nem írtam. Legközelebb a Designer és a DML kerül terítékre és egy apró program. A gépkönyv 827 oldalas ebbõl 50% a DML programozásáról szól, így elõreláthatólag 1-2 oldalba nem fér be. Ezért ha valakinek problémát jelentene a DML, vagy a SB4, nagyon szívesen rendelkezésére bocsátom lemezen a program teljes 700 kB terjedelmû (angol) dokumentációját.

Ezzel a SB4. elõrészét be is fejezném, bár tudom sok mindenrõl nem írtam. Legközelebb a Designer és a DML kerül terítékre és egy apró program. A gépkönyv 827 oldalas ebbõl 50% a DML programozásáról szól, így elõreláthatólag 1-2 oldalba nem fér be. Ezért ha valakinek problémát jelentene a DML, vagy a SB4, nagyon szívesen rendelkezésére bocsátom lemezen a program teljes 700 kB terjedelmû (angol) dokumentációját.