Db::set_dup_compare API Ref

#include <db_cxx.h>

extern "C" { typedef int (*dup_compare_fcn_type)(DB *, const DBT *, const DBT *); }; int Db::set_dup_compare(dup_compare_fcn_type dup_compare_fcn);


Description: Db::set_dup_compare

Set the duplicate data item comparison function. The comparison function is called whenever it is necessary to compare a data item specified by the application with a data item currently stored in the database. Calling Db::set_dup_compare implies calling Db::set_flags with the DB_DUPSORT flag.

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

The Db::set_dup_compare method may not be called after the Db::open method is called. If the database already exists when Db::open is called, the information specified to Db::set_dup_compare must be the same as that historically used to create the database or corruption can occur.

The Db::set_dup_compare 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
dup_compare_fcn

Errors

The Db::set_dup_compare method may fail and throw DbException, encapsulating one of the following non-zero errors, or return one of the following non-zero errors:


EINVAL


Class Db
See Also Databases and Related Methods

APIRef

Copyright (c) 1996,2008 Oracle. All rights reserved.