JetInit2 函数

适用于: Windows |Windows Server

JetInit2 函数

JetInit2 函数将数据库引擎置于支持应用程序使用数据库文件的状态。 必须使用 JetSetSystemParameter 正确配置引擎进行初始化。 数据库崩溃恢复在初始化过程中自动执行。

Windows XP:JetInit2 在 Windows XP 中引入。

此函数已过时。 请改用 JetInit3

JET_ERR JET_API JetInit2(
  __in_out_opt  JET_INSTANCE* pinstance,
  __in          JET_GRBIT grbit
);

parameters

pinstance

用于此调用的实例。

对于 Windows 2000,此参数将被忽略,应始终为 NULL。

对于 Windows XP 及更高版本,此参数的使用取决于引擎的操作模式。 如果引擎在仅支持一个实例的 Windows 2000 兼容模式 (旧模式) 运行,则此参数可以是 NULL,也可以设置为包含 NULL 的有效输出缓冲区或JET_instanceNil这将返回作为初始化副作用创建的全局实例句柄。 然后,可以将此实例句柄传递给采用实例的任何其他 API。 如果引擎在多实例模式下运行,则必须将此参数设置为有效的输入缓冲区,该缓冲区包含正在初始化的 JetCreateInstance 返回的实例句柄。

grbit

一组指定以下选项的零个或多个位。

含义

JET_bitReplayReplicatedLogFiles

保留供将来使用。

JET_bitCreateSFSVolumeIfNotExist

保留供将来使用。

JET_bitReplayIgnoreMissingDB

此选项允许用户对一组日志文件运行恢复,而无需存在所有数据库,这些数据库都附加在日志集的一个点。

JET_bitRecoveryWithoutUndo

执行恢复,但在撤消阶段停止。 这允许在 中复制并应用其他事务日志。

JET_bitTruncateLogsAfterRecovery

成功软恢复后,截断日志文件。

JET_bitReplayMissingMapEntryDB

缺少数据库映射条目默认为同一位置。

JET_bitReplayIgnoreLostLogs

忽略从日志流末尾丢失的日志。

Windows 7 中引入了 Windows 7:JET_bitReplayIgnoreLostLogs

返回值

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

备注

实例必须通过对 JetInit2 的调用进行初始化,然后才能由 JetSetSystemParameter 以外的任何内容使用。

即使该实例从未使用 JetInit 初始化,实例也会通过对 JetTerm 函数的调用来销毁。 实例是数据库引擎的可恢复性单位。 它控制用于保护一组数据库文件中数据完整性的所有文件的生命周期。 这些文件包括检查点文件和事务日志文件。

如果在一组日志上运行恢复,但并非所有数据库都存在 (在正常情况下) 返回错误JET_errAttachedDatabaseMismatch,并且客户端希望在缺少数据库的情况下继续恢复,则使用 JET_ bitReplayIgnoreMissingDB 继续恢复可用数据库。

有关详细信息,请参阅 JetInit 中的“备注”部分。

要求

要求

客户端

需要 Windows Vista 或 Windows XP。

服务器

需要 Windows Server 2008 或 Windows Server 2003。

标头

在 Esent.h 中声明。

Library

使用 ESENT.lib。

DLL

需要ESENT.dll。

另请参阅

可扩展存储引擎文件
JET_ERR
JET_GRBIT
JET_INSTANCE
JetCreateInstance
JetInit
JetInit3
JetSetSystemParameter
资源参数