Proste bazy danych

Python oferuje dostęp do prostych baz danych przypominających strukturą tablice. Chodzi dokładnie o moduły: anydb, bsddb. dbhash. dbm, gdbm i whichdb.
Każdy moduł ma metodę open(nazwa_bazy_danych, flagi) gdzie flagi: r - odczyt, w - odczyt/zapis, c - twórz bazę jeżeli nie istnieje, n - bezwarunkowe tworzenie nowej bazy danych. Obiekt "d" zwracany przez metodę open pozwala na wykonanie:
d[key] = wartość - przypisanie wartości do klucza (zapis w bazie danych)
wartość = d[key] - pobranie wartości
del d[key] - kasuje wpis
d.close() - zamyka połączenie
d.has_key() - sprawdza czy klucz istnieje
d.keys() - zwraca listę kluczy

anydbm - moduł zapewniający ogólny interfejs dla bsddb, gdbm i dbm. Oprócz opisanych powyżej metod posiada metodę error zwracającą tuplę z błędami. By je przechwytywać wystarczy zastosować: except anydbm.error:. Podobnie zachowują się inne bazy danych. Opisane są w dokumentacji pythona. Niektóre z obsługiwanych baz danych wymagają dodatkowego oprogramowania, które na systemach linux/unix zazwyczaj jest "domyślnie" instalowane (np. gdbm, używana m.in. przez program do obsługi pakietów RPM)

Przykład wykorzystania bazy gdbm:
import gdbm
d = gdbm.open('baza', 'w')
d['aaa'] = "zzz"
d.close()
import gdbm
d = gdbm.open('baza', 'r')
a = d['aaa']
print a
d.close()
RkBlog

Podstawy Pythona, 14 July 2008

Comment article
Comment article RkBlog main page Search RSS Contact