Assembly: libdb_dotnet52 (in libdb_dotnet52.dll) Version: 5.2.28.0
Syntax
C# |
---|
public static HashDatabase Open( string Filename, string DatabaseName, HashDatabaseConfig cfg, Transaction txn ) |
Visual Basic (Declaration) |
---|
Public Shared Function Open ( _ Filename As String, _ DatabaseName As String, _ cfg As HashDatabaseConfig, _ txn As Transaction _ ) As HashDatabase |
Visual C++ |
---|
public: static HashDatabase^ Open( String^ Filename, String^ DatabaseName, HashDatabaseConfig^ cfg, Transaction^ txn ) |
Parameters
- Filename
- Type: System..::.String
The name of an underlying file that will be used to back the database. In-memory databases never intended to be preserved on disk may be created by setting this parameter to null.
- DatabaseName
- Type: System..::.String
This parameter allows applications to have multiple databases in a single file. Although no DatabaseName needs to be specified, it is an error to attempt to open a second database in a file that was not initially created using a database name.
- cfg
- Type: BerkeleyDB..::.HashDatabaseConfig
The database's configuration
- txn
- Type: BerkeleyDB..::.Transaction
If the operation is part of an application-specified transaction, txn is a Transaction object returned from BeginTransaction()()(); if the operation is part of a Berkeley DB Concurrent Data Store group, txn is a handle returned from BeginCDSGroup()()(); otherwise null.
Return Value
A new, open database objectRemarks
If both Filename and DatabaseName are null, the database is strictly temporary and cannot be opened by any other thread of control, thus the database can only be accessed by sharing the single database object that created it, in circumstances where doing so is safe. If Filename is null and DatabaseName is non-null, the database can be opened by other threads of control and will be replicated to client sites in any replication group.
If txn is null, but AutoCommit is set, the operation will be implicitly transaction protected. Note that transactionally protected operations on a datbase object requires the object itself be transactionally protected during its open. Also note that the transaction must be committed before the object is closed.