Open Method (String, String, SecondaryBTreeDatabaseConfig, Transaction)

BerkeleyDB

Instantiate a new SecondaryBTreeDatabase object, open the database represented by Filename and associate the database with the primary index.

Namespace:  BerkeleyDB
Assembly:  libdb_dotnet48 (in libdb_dotnet48.dll) Version: 4.8.24.0

Syntax

C#
public static SecondaryBTreeDatabase Open(
	string Filename,
	string DatabaseName,
	SecondaryBTreeDatabaseConfig cfg,
	Transaction txn
)
Visual Basic (Declaration)
Public Shared Function Open ( _
	Filename As String, _
	DatabaseName As String, _
	cfg As SecondaryBTreeDatabaseConfig, _
	txn As Transaction _
) As SecondaryBTreeDatabase
Visual C++
public:
static SecondaryBTreeDatabase^ Open(
	String^ Filename, 
	String^ DatabaseName, 
	SecondaryBTreeDatabaseConfig^ 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..::.SecondaryBTreeDatabaseConfig
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 object

Remarks

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.

See Also