QNX Adatbáziskezelô szerver

-Specifikáció-

Az adatbáziskezelô szerver DBserver néven lesz elérhetô. Ez a név globális, ami azt jelenti, hogy a - tudomásunk szerint - még nem mûködô QNX hálózat bármely gépérôl elérhetôk a szolgáltatásai. A szerverrel való kommunikáció egyetlen módja egy sztring küldése majd fogadása.

A server alapvetôen öt mûveletet ismer:

  1. rekord olvasás
  2. rekord írás
  3. rekord törlés
  4. adatbázis törlés
  5. teszt
Az adatbáziskezelô az adatbázisokat rekordokból építi fel, illetve ilyennek feltételezi. A rekordokat minta alapján azonosítjuk, lehetôséget adva az adatbázis órákon elsajátított módszerek használatára. :-)
Így tehát a fenti elsô három mûvelet a következôket jelenti:
  1. Egy vagy több rekord minta alapján történô megkeresése (olvasás)
  2. Egyetlen rekord kiírása (írás)
    Itt is minta alapján történik a keresés; amennyiben a megadott minta (lsd. késôbb) nem passzol egyik rekordra sem, akkor hozzáfûzés történik, ha ráillik (egy és csak egy rekordra!), akkor pedig módosítás.
  3. Egy vagy több rekord minta alapján történô kitörlése (törlés)

A "találat", azaz az illeszkedô minta értelmezése: a DB szerver kliensei (= a kiadott feladatok szerverei) struktúraként épitik fel a rekordot, ezekben egy vagy több kulcsmezô található. A struktúra felépítése a szervert nem érinti, viszont a keresést ennek a struktúrának a maszkolt változatával végzi. Azaz az adatállományban a 'fontos' mezôk tartalmát próbálja illeszteni (természetesen pozícióhelyesen). Írásnál csak egy találatot enged meg, hiszen egy rekordot többszörösen rögzíteni értelmetlen, olvasásnál és törlésnél viszont több rekordról is szó lehet, ezeket mind átadja, illetve törli. Így töredékes kulcs is használható.

Az üzenetek szerkezete: (zárójelben a bytepozíció):

Az olvasás mûvelet az következô értékekkel térhet vissza:

Az írás mûvelet kimenetei: Rekord törlés:

Adatbázis törlés:

  1. Adatbázis nem létezik: DATABASE_NOT_EXISTS
  2. Adatbázis törölve: DATABASE_DELETED

Az adatbiztonság kérdését nagyon egyszerûen oldottuk meg: a jelszó az adatbázisfile neve, aki ezt eltalálja, írhatja a filet.

Ezen a lapon mindig a legfrissebb állapotot láthatjátok.
A visszatérési értékek egy header file formájában lesznek közzétéve, ami letölthetô lesz errôl a lapról. A header file jelenlegi tartalma:

/*   ADATBAZISKEZELO Header file
     Tartalmazza a visszateresi ertekek szoveges megfelelojet
*/ 

#define MASKLEN_NE_RECORDLEN 201	
#define RECORD_NOT_VALID 202
#define MULTIPLE_MATCHING_RECORDS 203
#define RECORD_APPENDED 204
#define RECORD_MODIFIED 205
#define DATABASE_NOT_EXISTS 206
#define DATABASE_DELETED 207
#define RECORDS_FOUND 208
#define DATABASE_CREATED 209
#define RECORD_NOT_FOUND 210
#define RECORDS_DELETED 211


A Drótos Dániel által továbbfejlesztett program forráskódja: qnxdbs_s.html

Az értetlenkedéseket, ill. javaslatokat a következô címekre várjuk:
irtpa@gold.uni-miskolc.hu & fulep@www.lib.uni-miskolc.hu

Perlaki Attila, Fülep Dávid


In memoriam