JetDetachDatabase2 Function

Applies to: Windows | Windows Server

JetDetachDatabase2 Function

The JetDetachDatabase2 function releases a database file that was previously attached to a database session.

Windows XP:  JetDetachDatabase2 is introduced in Windows XP.

    JET_ERR JET_API JetDetachDatabase2(
      __in          JET_SESID sesid,
      __in          const tchar* szFilename,
      __in          JET_GRBIT grbit
    );

Parameters

sesid

The database session context to use for the API call.

szFilename

The name of the database to detach. If szFilename is NULL or an empty string, all databases attached to sesid will be detached.

grbit

A group of bits specifying zero or more of the following options.

Value

Meaning

JET_bitForceCloseAndDetach

Forces the database to be closed and detached. If JET_bitForceCloseAndDetach is not supported, JET_errForceDetachNotAllowed will be returned.

JET_bitForceDetach

Forces the database to be detached. If JET_bitForceDetach is not supported, JET_errForceDetachNotAllowed will be returned.

Return Value

This function returns the JET_ERR datatype with one of the following return codes. For more information about the possible ESE errors, see Extensible Storage Engine Errors and Error Handling Parameters.

Return code

Description

JET_errSuccess

The operation completed successfully.

JET_errBackupInProgress

The database is being backed up, and cannot be detached.

JET_errDatabaseInUse

The database has been opened by JetOpenDatabase. Databases must be closed prior to detaching.

JET_errDatabaseNotFound

The database was not previously attached (See JetAttachDatabase or JetAttachDatabase2).

JET_errForceDetachNotAllowed

JET_bitForceDetach is not supported.

JET_errInTransaction

An attempt was made to detach a database while in a transaction.

Remarks

If an attached database was opened (with JetAttachDatabase), it must be closed with JetCloseDatabase prior to detaching.

Windows 2000 only: Databases which have not been detached prior to calling JetTerm will automatically be re-attached when JetInit is next called.

Requirements

Requirement Value

Client

Requires Windows Vista or Windows XP.

Server

Requires Windows Server 2008 or Windows Server 2003.

Header

Declared in Esent.h.

Library

Use ESENT.lib.

DLL

Requires ESENT.dll.

Unicode

Implemented as JetDetachDatabase2W (Unicode) and JetDetachDatabase2A (ANSI).

See Also

JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetAttachDatabase
JetAttachDatabase2
JetCloseDatabase
JetCreateDatabase
JetCreateDatabase2
JetInit
JetOpenDatabase
JetTerm