Db::cursor
|
|
#include <db_cxx.h>
int
Db::cursor(DbTxn *txnid, Dbc **cursorp, u_int32_t flags);
Description: Db::cursor
The Db::cursor method returns a created database cursor.
The Db::cursor method
either returns a non-zero error value
or throws an exception that encapsulates a non-zero error value on
failure, and returns 0 on success.
Parameters
- cursorp
- The cursorp parameter references memory into which
a pointer to the allocated cursor is copied.
- flags
- The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one
or more of the following values:
- DB_DEGREE_2
- This cursor will have degree 2 isolation. This ensures the stability
of the current data item read by this cursor but permits data read
by this cursor to be modified or deleted prior to the commit of
the transaction for this cursor.
- DB_DIRTY_READ
- All read operations performed by the cursor may return modified but not
yet committed data. Silently ignored if the DB_DIRTY_READ flag
was not specified when the underlying database was opened.
- DB_WRITECURSOR
- Specify that the cursor will be used to update the database. The
underlying database environment must have been opened using the
DB_INIT_CDB flag.
- txnid
- If the operation is to be transaction-protected,
the txnid parameter is a transaction handle returned from
DbEnv::txn_begin; otherwise, NULL. To transaction-protect cursor operations, cursors must be opened and
closed within the context of a transaction, and the txnid
parameter specifies the transaction context in which the cursor may be
used.
Errors
The Db::cursor method
may fail and throw
DbException,
encapsulating one of the following non-zero errors, or return one of
the following non-zero errors:
- DB_REP_HANDLE_DEAD
- The database handle has been invalidated because a replication election
unrolled a committed transaction.
- EINVAL
- An
invalid flag value or parameter was specified.
Class
Dbc
See Also
Database Cursors and Related Methods
Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved.