428
|
1 @c -*-texinfo-*-
|
|
2 @c This is part of the XEmacs Lisp Reference Manual.
|
|
3 @c Copyright (C) 1996 Ben Wing.
|
|
4 @c See the file lispref.texi for copying conditions.
|
|
5 @setfilename ../../info/databases.info
|
|
6 @node Databases, Processes, Range Tables, top
|
|
7 @chapter Databases
|
|
8 @cindex database
|
|
9
|
|
10 @defun databasep object
|
|
11 This function returns non-@code{nil} if @var{object} is a database.
|
|
12 @end defun
|
|
13
|
|
14 @menu
|
|
15 * Connecting to a Database::
|
|
16 * Working With a Database::
|
|
17 * Other Database Functions::
|
|
18 @end menu
|
|
19
|
|
20 @node Connecting to a Database
|
|
21 @section Connecting to a Database
|
|
22
|
|
23 @defun open-database file &optional type subtype access mode
|
|
24 This function opens database @var{file}, using database method
|
|
25 @var{type} and @var{subtype}, with access rights @var{access} and
|
|
26 permissions @var{mode}. @var{access} can be any combination of @code{r}
|
|
27 @code{w} and @code{+}, for read, write, and creation flags.
|
|
28
|
442
|
29 @var{type} can have the value @code{'dbm} or @code{'berkeley-db} to
|
428
|
30 select the type of database file to use. (Note: XEmacs may not
|
|
31 support both of these types.)
|
|
32
|
|
33 For a @var{type} of @code{'dbm}, there are no subtypes, so
|
442
|
34 @var{subtype} should be @code{nil}.
|
428
|
35
|
442
|
36 For a @var{type} of @code{'berkeley-db}, the following subtypes are
|
428
|
37 available: @code{'hash}, @code{'btree}, and @code{'recno}. See the
|
442
|
38 manpages for the Berkeley DB functions for more information about these
|
428
|
39 types.
|
|
40 @end defun
|
|
41
|
|
42 @defun close-database obj
|
|
43 This function closes database @var{obj}.
|
|
44 @end defun
|
|
45
|
|
46 @defun database-live-p obj
|
|
47 This function returns @code{t} iff @var{obj} is an active database, else
|
|
48 @code{nil}.
|
|
49 @end defun
|
|
50
|
|
51 @node Working With a Database
|
|
52 @section Working With a Database
|
|
53
|
|
54 @defun get-database key dbase &optional default
|
|
55 This function finds the value for @var{key} in @var{database}. If there is no
|
|
56 corresponding value, @var{default} is returned (@code{nil} if @var{default} is
|
|
57 omitted).
|
|
58 @end defun
|
|
59
|
|
60 @defun map-database function dbase
|
|
61 This function maps @var{function} over entries in @var{database},
|
|
62 calling it with two args, each key and value in the database.
|
|
63 @end defun
|
|
64
|
|
65 @defun put-database key val dbase &optional replace
|
|
66 This function stores @var{key} and @var{val} in @var{database}. If
|
|
67 optional fourth arg @var{replace} is non-@code{nil}, replace any
|
|
68 existing entry in the database.
|
|
69 @end defun
|
|
70
|
|
71 @defun remove-database key dbase
|
|
72 This function removes @var{key} from @var{database}.
|
|
73 @end defun
|
|
74
|
|
75 @node Other Database Functions
|
|
76 @section Other Database Functions
|
|
77
|
|
78 @defun database-file-name obj
|
|
79 This function returns the filename associated with the database @var{obj}.
|
|
80 @end defun
|
|
81
|
|
82 @defun database-last-error &optional obj
|
|
83 This function returns the last error associated with database @var{obj}.
|
|
84 @end defun
|
|
85
|
|
86 @defun database-subtype obj
|
|
87 This function returns the subtype of database @var{obj}, if any.
|
|
88 @end defun
|
|
89
|
|
90 @defun database-type obj
|
|
91 This function returns the type of database @var{obj}.
|
|
92 @end defun
|