JetDetachDatabase 函数

适用于: Windows |Windows Server

JetDetachDatabase 函数

JetDetachDatabase 函数释放以前附加到数据库会话的数据库文件。

    JET_ERR JET_API JetDetachDatabase(
      __in          JET_SESID sesid,
      __in          const tchar* szFilename
    );

parameters

sesid

用于 API 调用的数据库会话上下文。

szFilename

要分离的数据库的名称。 如果 szFilenameNULL 或空字符串,则将分离附加到 sesid 的所有数据库。

返回值

此函数返回具有以下返回代码之一 的JET_ERR 数据类型。 有关可能的 ESE 错误的详细信息,请参阅 可扩展存储引擎错误错误处理参数

返回代码

说明

JET_errSuccess

操作已成功完成。

JET_errBackupInProgress

正在备份数据库,无法分离。

JET_errDatabaseInUse

JetOpenDatabase 已打开数据库。 在分离之前,必须关闭数据库。

JET_errDatabaseNotFound

以前未附加数据库 (请参阅 JetAttachDatabaseJetAttachDatabase2) 。

JET_errInTransaction

尝试在事务中分离数据库。

备注

如果使用 JetAttachDatabase) (打开附加数据库,则必须在分离之前使用 JetCloseDatabase 关闭该数据库。

仅限 Windows 2000:下次调用 JetInit 时,将自动重新连接在调用 JetTerm 之前尚未分离的数据库。

要求

要求

客户端

需要 Windows Vista、Windows XP 或 Windows 2000 专业版。

服务器

需要 Windows Server 2008、Windows Server 2003 或 Windows 2000 Server。

标头

在 Esent.h 中声明。

Library

使用 ESENT.lib。

DLL

需要ESENT.dll。

Unicode

实现为 JetDetachDatabaseW (Unicode) 和 JetDetachDatabaseA (ANSI) 。

另请参阅

JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetAttachDatabase
JetAttachDatabase2
JetCreateDatabase
JetCreateDatabase2
JetCloseDatabase
JetTerm