< Linux

Adatbázisok

Szerző: Sallai András

Copyright © Sallai András, 2020

CC Attribution-Share Alike 4.0 International

Web: https://szit.hu

GDBM

A GNU dbm, rövdien GDBM, egy adatbázis függvényeket tartalmazó programozói könyvtár, hasonlít a UNIX dbm-hez. A dbm egy úgynevezett hasított adatbázis, amely kulcs, adat párokat típus.

apt install libgdbm-dev

Használható fejállományok telepítés után:

dbm.h

gdbm-ndbm.h

gdbm.h

man gdbm

Kulcsok és adatok

A kulcsokat és az adatokat egy datum nevű struktúrában tároljuk:

typedef struct { char *dptr; int dsize; } datum;

Használat

#include <gdbm.h> int main() { GDBM_FILE fp; fp = gdbm_open("valami.db", 512, GDBM_WRCREAT, 0666, 0 ); datum key = { "nev1", 4 }; datum value = { "Nagy Janos", 10 }; gdbm_store(fp, key, value, GDBM_INSERT); gdbm_close(fp); }

Fordítás:

gcc -o prog prog.c -lgdbm

A harmadik paraméter jelzők:

GDBM_READER

GDBM_WRITER

GDBM_WRCREAT

GDBM_NEWDB

Szintaxis:

gdbm_open (const char *name, int block_size, int flags,
int mode, void (*fatal_func)(const char *))

int gdbm_store (GDBM_FILE dbf, datum key, datum content, int flag)

int gdbm_close (GDBM_FILE dbf)

Eszközök

Kész eszközök telepítése:

apt install gdbmtool

Indítás:

gdbmtool

Indítható egy fájl megnyitásáva:

gdbm_dump fajl.db

gdbmtool> store
KEY? nev1
DATA? Nagy Janos
gdbmtool> list
nev1 Nagy Janos

gdbmtool> store nev2 "Baranyi Ferenc"

Dump:

gdbm_dump fajl.db

Linkek

http://en.wikipedia.org/wiki/Dbm

http://www.gnu.org.ua/software/gdbm/