A database cursor refers to a single key/data pair in the database. It supports traversal of the database and is the only way to access individual duplicate data items. Cursors are used for operating on collections of records, for iterating over a database, and for saving handles to individual records, so that they can be modified after they have been read.
The DB->cursor function is the standard interface for opening a cursor into a database. Upon return the cursor is uninitialized -- positioning occurs as part of the first cursor operation.
Once a database cursor has been opened, records may be retrieved (DBcursor->c_get), stored (DBcursor->c_put), and deleted (DBcursor->c_del).
Additional operations supported by the cursor handle include duplication (DBcursor->c_dup), equality join (DB->join), and a count of duplicate data items (DBcursor->c_count). Cursors are eventually closed using DBcursor->c_close.
Copyright Sleepycat Software