#include <db_cxx.h>
Dbc::count(db_recno_t *countp, u_int32_t flags);

The Dbc::count() method returns a count of the number of data items for the key to which the cursor refers.

The Dbc::count() 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.



The countp parameter references memory into which the count of the number of duplicate data items is copied.


The flags parameter is currently unused, and must be set to 0.


The Dbc::count() method may fail and throw a DbException exception, encapsulating one of the following non-zero errors, or return one of the following non-zero errors:

DbRepHandleDeadException or DB_REP_HANDLE_DEAD

When a client synchronizes with the master, it is possible for committed transactions to be rolled back. This invalidates all the database and cursor handles opened in the replication environment. Once this occurs, an attempt to use such a handle will throw a DbRepHandleDeadException (if your application is configured to throw exceptions), or return DB_REP_HANDLE_DEAD. The application will need to discard the handle and open a new one in order to continue processing.

DbDeadlockException or DB_REP_LOCKOUT

The operation was blocked by client/master synchronization.

DbDeadlockException is thrown if your Berkeley DB API is configured to throw exceptions. Otherwise, DB_REP_LOCKOUT is returned.


If the cursor has not been initialized; or if an invalid flag value or parameter was specified.



See Also

Database Cursors and Related Methods