db_create
|

|
#include <db.h>
int
db_create(DB **dbp, DB_ENV *dbenv, u_int32_t flags);
Description
The db_create function creates a DB structure which is the handle for a
Berkeley DB database. A pointer to this structure is returned in the memory
referenced by db.
If the dbenv argument is NULL, the database is standalone, i.e.,
it is not part of any Berkeley DB environment.
If the dbenv argument is not NULL, the database is created within
the specified Berkeley DB environment. The database access methods
automatically make calls to the other subsystems in Berkeley DB based on the
enclosing environment. For example, if the environment has been
configured to use locking, then the access methods will automatically
acquire the correct locks when reading and writing pages of the database.
The flags parameter must be set to 0 or one of the following
values:
- DB_XA_CREATE
- Instead of creating a standalone database, create a database intended to
be accessed via applications running under a X/Open conformant Transaction
Manager. The database will be opened in the environment specified by the
OPENINFO parameter of the GROUPS section of the ubbconfig file. See the
XA Resource Manager chapter in the
Reference Guide for more information.
The db_create
function returns a non-zero error value on failure and 0 on success.
Errors
If a fatal error occurs in Berkeley DB, the db_create function will fail and return
DB_RUNRECOVERY, at which point all subsequent database calls will
fail in the same way.
In addition, the db_create function may fail and
return a non-zero error
for errors specified for other Berkeley DB and C library or system functions.
See Also
db_create,
DB->close,
DB->cursor,
DB->del,
DB->err,
DB->fd,
DB->get,
DB->get_byteswapped,
DB->get_type,
DB->join,
DB->open,
DB->put,
DB->remove,
DB->set_bt_compare,
DB->set_bt_minkey,
DB->set_bt_prefix,
DB->set_cachesize,
DB->set_dup_compare,
DB->set_errcall,
DB->set_errfile,
DB->set_errpfx,
DB->set_flags,
DB->set_h_ffactor,
DB->set_h_hash,
DB->set_h_nelem,
DB->set_lorder,
DB->set_malloc,
DB->set_pagesize,
DB->set_paniccall,
DB->set_realloc,
DB->set_re_delim,
DB->set_re_len,
DB->set_re_pad,
DB->set_re_source,
DB->stat,
DB->sync
and
DB->upgrade.
Copyright Sleepycat Software