The Database type exposes the following members.
Although closing a database will close any open cursors, it is recommended that applications explicitly close all their Cursor objects before closing the database. The reason why is that when the cursor is explicitly closed, the memory allocated for it is reclaimed; however, this will not happen if you close a database while cursors are still opened.
The same rule, for the same reasons, hold true for Transaction objects. Simply make sure you resolve all your transaction objects before closing your database handle.
Because key/data pairs are cached in memory, applications should make a point to always either close database handles or sync their data to disk (using Sync()()() before exiting, to ensure that any data cached in main memory are reflected in the underlying file system.
When called on a database that is the primary database for a secondary index, the primary database should be closed only after all secondary indices referencing it have been closed.
When multiple threads are using the object concurrently, only a single thread may call the Close method.
The object may not be accessed again after Close is called, regardless of its outcome.
Release the resources held by this object, and close the database if it's still open.(Inherited from BaseDatabase.)
Serves as a hash function for a particular type.(Inherited from Object.)
Gets the Type of the current instance.(Inherited from Object.)
Create a specialized join cursor for use in performing equality or natural joins on secondary indices.
If the database supports duplicates, add the new data value at the end of the duplicate set. If the database supports sorted duplicates, the new data value is inserted at the correct sorted location.
Flush any cached information to disk.(Inherited from BaseDatabase.)
When called on a database configured with secondary indices, Truncate will truncate the primary database and all secondary indices. A count of the records discarded from the primary database is returned.
Database upgrades are done in place and are destructive. For example, if pages need to be allocated and no disk space is available, the database may be left corrupted. Backups should be made before databases are upgraded. See Upgrading databases in the Programmer's Reference Guide for more information.
Verify does not perform any locking, even in Berkeley DB environments that are configured with a locking subsystem. As such, it should only be used on files that are not being modified by another thread of control.
If true, all database modification operations based on this object will be transactionally protected.(Inherited from BaseDatabase.)
The size of the shared memory buffer pool -- that is, the cache.(Inherited from BaseDatabase.)
The CreatePolicy with which this database was opened.(Inherited from BaseDatabase.)
The name of this database, if it has one.(Inherited from BaseDatabase.)
If true, do checksum verification of pages read into the cache from the backing filestore.(Inherited from BaseDatabase.)
The algorithm used by the Berkeley DB library to perform encryption and decryption.(Inherited from BaseDatabase.)
If true, encrypt all data stored in the database.(Inherited from BaseDatabase.)
The database byte order.(Inherited from BaseDatabase.)
The mechanism for reporting detailed error messages to the application.(Inherited from BaseDatabase.)
The prefix string that appears before error messages issued by Berkeley DB.(Inherited from BaseDatabase.)
Monitor progress within long running operations.(Inherited from BaseDatabase.)
The filename of this database, if it has one.(Inherited from BaseDatabase.)
If true, the object is free-threaded; that is, concurrently usable by multiple threads in the address space.(Inherited from BaseDatabase.)
If true, the object references a physical file supporting multiple databases.(Inherited from BaseDatabase.)
If true, the underlying database files were created on an architecture of the same byte order as the current one. This information may be used to determine whether application data needs to be adjusted for this architecture or not.(Inherited from BaseDatabase.)
If true, this database is not mapped into process memory.
See MMapSize for further information.
If true, Berkeley DB will not write log records for this database.(Inherited from BaseDatabase.)
The database's current page size.(Inherited from BaseDatabase.)
The cache priority for pages referenced by this object.(Inherited from BaseDatabase.)
If true, this database has been opened for reading only. Any attempt to modify items in the database will fail, regardless of the actual permissions of any underlying files.(Inherited from BaseDatabase.)
If true, this database supports transactional read operations with degree 1 isolation. Read operations on the database may request the return of modified but not yet committed data.(Inherited from BaseDatabase.)
If true, this database has been opened in a transactional mode.(Inherited from BaseDatabase.)
If true, the underlying file was physically truncated upon open, discarding all previous databases it might have held.(Inherited from BaseDatabase.)
The type of the underlying access method (and file format). This value may be used to determine the type of the database after an Open(String, DatabaseConfig).(Inherited from BaseDatabase.)
If true, the database was opened with support for multiversion concurrency control.(Inherited from BaseDatabase.)