If the cursor is not yet initialized, MoveNextUnique is identical to MoveFirst()()(). Otherwise, move the cursor to the next non-duplicate key in the database, and store that key and associated datum in Current. MoveNextUnique will return false if no non-duplicate key/data pairs exist after the cursor position in the database. If either the key or the 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, MoveNextUnique is successful, and any existing bytes are returned.

Namespace:  BerkeleyDB
Assembly:  libdb_dotnet52 (in libdb_dotnet52.dll) Version:


public bool MoveNextUnique(
	DatabaseEntry key,
	DatabaseEntry data
Visual Basic (Declaration)
Public Function MoveNextUnique ( _
	key As DatabaseEntry, _
	data As DatabaseEntry _
) As Boolean
Visual C++
bool MoveNextUnique(
	DatabaseEntry^ key, 
	DatabaseEntry^ data


Type: BerkeleyDB..::.DatabaseEntry
The retrieved key
Type: BerkeleyDB..::.DatabaseEntry
The retrieved data

Return Value

True if the cursor was positioned successfully, false otherwise.


If the database is a Queue or Recno database, MoveNextUnique will ignore any keys that exist but were never explicitly created by the application, or those that were created and later deleted.

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

See Also