blob: 40facad8991a46fafd2b222c2868861dd0f6a14b [file] [log] [blame]
Guido van Rossumb69e0951994-08-08 08:03:24 +00001\section{Built-in Module \sectcode{gdbm}}
2\bimodindex{gdbm}
3
4Gdbm provides python programs with an interface to the GNU \code{gdbm}
5database library. Gdbm objects are of the mapping type, so they can be
6handled just like objects of the built-in \dfn{dictionary} type,
7except that keys and values are always strings, and printing a gdbm
8object doesn't print the keys and values.
9
10The module is based on the Dbm module, modified to use GDBM instead.
11
12The module defines the following constant and functions:
13
14\renewcommand{\indexsubitem}{(in module gdbm)}
15\begin{excdesc}{error}
16Raised on gdbm-specific errors, such as I/O errors. \code{KeyError} is
17raised for general mapping errors like specifying an incorrect key.
18\end{excdesc}
19
20\begin{funcdesc}{open}{filename\, rwmode\, filemode}
21Open a gdbm database and return a mapping object. \var{filename} is
22the name of the database file, \var{rwmode} is \code{'r'}, \code{'w'},
23\code{'c'}, or \code{'n'} for reader, writer (this also gives read
24access), create (writer, but create the database if it doesnt already
25exist) and newdb (which will always create a new database). Only one
26writer may open a gdbm file and many readers may open the file. Readers
27and writers can not open the gdbm file at the same time. Note that the
28\code{GDBM_FAST} mode of opening the database is not supported. \var{filemode}
29is the unix mode of the file, used only when a database is created.
30\end{funcdesc}