DB->set_bt_compare

APIRef

#include <db.h>

int DB->set_bt_compare(DB *db, int (*bt_compare_fcn)(const DBT *, const DBT *));

Description

Set the Btree key comparison function.

This comparison function must return an integer less than, equal to, or greater than zero if the first key argument is considered to be respectively less than, equal to, or greater than the second key argument. The same comparison method must be used on a given tree every time it is opened.

The data and size fields of the DBT are the only fields that may be used for the purposes of this comparison.

If no comparison function is specified, the keys are compared lexically, with shorter keys collating before longer keys.

The DB->set_bt_compare interface may only be used to configure Berkeley DB before the DB->open interface is called.

The DB->set_bt_compare function returns a non-zero error value on failure and 0 on success.

Errors

EINVAL
An invalid flag value or parameter was specified.

Called after DB->open was called.

See Also

db_create, DB->close, DB->cursor, DB->del, DB->err, DB->fd, DB->get, DB->get_byteswapped, DB->get_type, DB->join, DB->open, DB->put, DB->remove, DB->set_bt_compare, DB->set_bt_minkey, DB->set_bt_prefix, DB->set_cachesize, DB->set_dup_compare, DB->set_errcall, DB->set_errfile, DB->set_errpfx, DB->set_flags, DB->set_h_ffactor, DB->set_h_hash, DB->set_h_nelem, DB->set_lorder, DB->set_malloc, DB->set_pagesize, DB->set_paniccall, DB->set_realloc, DB->set_re_delim, DB->set_re_len, DB->set_re_pad, DB->set_re_source, DB->stat, DB->sync and DB->upgrade.

APIRef

Copyright Sleepycat Software