Db::set_append_recno |
#include <db_cxx.h>int Db::set_append_recno( int (*db_append_recno_fcn)(DB *dbp, Dbt *data, db_recno_t recno));
When using the DB_APPEND option of the Db::put method, it may be useful to modify the stored data based on the generated key. If a callback method is specified using the Db::set_append_recno method, it will be called after the record number has been selected but before the data has been stored. The callback function must return 0 on success and errno or a value outside of the Berkeley DB error name space on failure.
The called function must take three arguments: a reference to the enclosing database handle, the data Dbt to be stored and the selected record number. The called function may then modify the data Dbt.
The Db::set_append_recno interface may only be used to configure Berkeley DB before the Db::open interface is called.
The Db::set_append_recno 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.