If the previous key/data pair of the database is a duplicate data record for the current key/data pair, the cursor is moved to the previous key/data pair of the database, and the secondary key and primary key/data pair in Current. MovePrevDuplicate returns false if the previous key/data pair of the database is not a duplicate data record for the current key/data pair. If key, or pkey, or data is partial DatabaseEntry, its PartialLen bytes starting PartialOffset bytes from the beginning of the retrieved data record are returned as if they comprised the entire record. If any or all of the specified bytes do not exist in the record, MovePrevDuplicate is successful, and any existing bytes are returned.

Namespace:  BerkeleyDB
Assembly:  libdb_dotnet181 (in libdb_dotnet181.dll) Version: 18.1.32.0

Syntax

C#
public bool MovePrevDuplicate(
	DatabaseEntry key,
	DatabaseEntry pkey,
	DatabaseEntry data,
	LockingInfo info
)
Visual Basic (Declaration)
Public Function MovePrevDuplicate ( _
	key As DatabaseEntry, _
	pkey As DatabaseEntry, _
	data As DatabaseEntry, _
	info As LockingInfo _
) As Boolean
Visual C++
public:
bool MovePrevDuplicate(
	DatabaseEntry^ key, 
	DatabaseEntry^ pkey, 
	DatabaseEntry^ data, 
	LockingInfo^ info
)

Parameters

key
Type: BerkeleyDB..::.DatabaseEntry
The retrieved key in secondary db
pkey
Type: BerkeleyDB..::.DatabaseEntry
The key of the matching record in primary db
data
Type: BerkeleyDB..::.DatabaseEntry
The data of the matching record in primary db
info
Type: BerkeleyDB..::.LockingInfo
The locking behavior to use

Return Value

True if the cursor was positioned successfully, false otherwise.

Remarks

If positioning the cursor fails, Current will contain an empty KeyValuePair<(Of <(TKey, TValue>)>).

See Also