Instantiate a new SecondaryDatabase object, open the database represented by Filename and associate the database with the primary index. The file specified by Filename must exist.

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


public static SecondaryDatabase Open(
	string Filename,
	string DatabaseName,
	SecondaryDatabaseConfig cfg,
	Transaction txn
Visual Basic (Declaration)
Public Shared Function Open ( _
	Filename As String, _
	DatabaseName As String, _
	cfg As SecondaryDatabaseConfig, _
	txn As Transaction _
) As SecondaryDatabase
Visual C++
static SecondaryDatabase^ Open(
	String^ Filename, 
	String^ DatabaseName, 
	SecondaryDatabaseConfig^ cfg, 
	Transaction^ txn


Type: System..::.String
The name of an underlying file that will be used to back the database.
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.
Type: BerkeleyDB..::.SecondaryDatabaseConfig
The database's configuration
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


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 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.

See Also