# Db.cursor

`

###

    import com.sleepycat.db.*;

    public Dbc cursor(DbTxn txnid, int flags)
    	throws DbException;

# Description

The Db.cursor method creates a cursor.

If the file is being accessed under transaction protection, the txnid parameter is a transaction ID returned from DbEnv.txn_begin, otherwise, NULL.

If transaction protection is enabled, 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.

The flags value must be set to 0 or by bitwise inclusively OR'ing together one or more of the following values.

Db.DB_WRITECURSOR
  Specify that the cursor will be used to update the database. This flag should only be set when the Db.DB_INIT_CDB flag was specified to DbEnv.open.

The Db.cursor method throws an exception that encapsulates a non-zero error value on failure.

# Errors

The Db.cursor method may fail and throw an exception encapsulating a non-zero error for the following conditions:

EINVAL
  An invalid flag value or parameter was specified.

The Db.cursor method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. If a catastrophic error has occurred, the Db.cursor method may fail and throw a DbRunRecoveryException, in which case all subsequent Berkeley DB calls will fail in the same way.

### Class

Db

# See Also

Db.close, Db.cursor, Db.del, Db.fd, Db.get, Db.get_byteswapped, Db.get_type, Db.join, Db.key_range, Db.open, Db.put, Db.remove, Db.set_bt_minkey, Db.set_cachesize, Db.set_errcall, Db.set_errpfx, Db.set_flags, Db.set_h_ffactor, Db.set_h_nelem, Db.set_lorder, Db.set_pagesize, Db.set_q_extentsize, Db.set_re_delim, Db.set_re_len, Db.set_re_pad, Db.set_re_source, Db.stat, Db.sync, Db.upgrade and Db.verify.`

Copyright Sleepycat Software