8.6 dbm -- Semplice interfaccia ``database''

Disponibilità: Unix.

Il modulo dbm fornisce un'interfaccia per la libreria Unix (n)dbm. Gli oggetti dbm si comportano come le mappe (dizionari), eccetto per il fatto che chiavi e valori sono sempre stringhe. Stampando un oggetto dbm non vengono stampati le chiavi ed i valori, ed i metodi items() e values() non vengono supportati.

Questo modulo può essere usato con la ``classica'' interfaccia ndbm, l'interfaccia BSD di compatibilità DB, o l'interfaccia compatibile GNU GDBM. Su Unix, lo script configure tenterà di localizzare il file header appropriato per semplificare la compilazione di questo modulo.

Il modulo definisce i seguenti attributi:

exception error
Solleva specifici errori dbm, come errori di I/O. L'eccezione KeyError viene sollevata in caso di errori generali di mappatura, come specificare una chiave non corretta.

library
Nome della libreria d'implementazione ndbm utilizzata.

open( filename[, flag[, mode]])
Apre un database dbm e restituisce un oggetto dbm. L'argomento filename è il nome del file database (senza l'estensione .dir o .pag; notate che l'implementazione dell'interfaccia DB BSD aggiungerà l'estensione .db e creerà solamente un file).

L'argomento facoltativo flag deve possedere uno di questi valori:

Valore  Significato 
'r' Apre un database esistente in sola lettura (predefinito)
'w' Apre un database esistente in lettura e scrittura
'c' Apre un database in lettura e scrittura, creandolo se non esiste
'n' Crea sempre un nuovo database vuoto, aperto in lettura e scrittura

L'argomento facoltativo mode rappresenta la modalità Unix del file, usata solamente quando il database deve essere creato. Il valore ottale predefinito è 0666.

Vedete anche:

Modulo anydbm:
Interfaccia generica ai database in stile dbm.
Modulo gdbm:
Intefaccia simile alla libreria GNU GDBM.
Modulo whichdb:
Un modulo utile da utilizzare per determinare il tipo di un database già esistente.
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.