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
资源参数