db_env_create

API Ref

#include <db.h>

int db_env_create(DB_ENV **dbenvp, u_int32_t flags);


Description: db_env_create

The DB_ENV object is the handle for a Berkeley DB environment -- a collection including support for some or all of caching, locking, logging and transaction subsystems, as well as databases and log files. Methods off the DB_ENV handle are used to configure the environment as well as to operate on subsystems and databases in the environment.

DB_ENV handles are free-threaded if the DB_THREAD flag is specified to the DB_ENV->open method when the environment is opened. The DB_ENV handle should not be closed while any other handle remains open that is using it as a reference (for example, DB or DB_TXN). Once either the DB_ENV->close or DB_ENV->remove methods are called, the handle may not be accessed again, regardless of the method's return.

The db_env_create method creates a DB_ENV structure that is the handle for a Berkeley DB environment. A pointer to this structure is returned in the memory to which dbenvp refers. Calling the DB_ENV->close or DB_ENV->remove methods will discard the returned handle.

The DB_ENV handle contains a special field, "app_private", which is declared as type "void *". This field is provided for the use of the application program. It is initialized to NULL and is not further used by Berkeley DB in any way.

The db_env_create method returns a non-zero error value on failure and 0 on success.

The flags parameter must be set to 0 or the following value:
DB_RPCCLIENT
Create a client environment to connect to a server.

The DB_RPCCLIENT flag indicates to the system that this environment is remote on a server. The use of this flag causes the environment methods to use functions that call a server instead of local functions. Prior to making any environment or database method calls, the application must call the DB_ENV->set_rpc_server function to establish the connection to the server.

Errors


Class

DB_ENV

See Also

Database Environments and Related Methods

APIRef

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved.