JET_DBINFOMISC4 结构

适用于: Windows |Windows服务器

JET_DBINFOMISC4 结构

JET_DBINFOMISC4 包含有关数据库的杂项信息。 这是数据库标头中包含的信息。

    typedef struct {
      unsigned long ulVersion;
      unsigned long ulUpdate;
      JET_SIGNATURE signDb;
      unsigned long dbstate;
      JET_LGPOS lgposConsistent;
      JET_LOGTIME logtimeConsistent;
      JET_LOGTIME logtimeAttach;
      JET_LGPOS lgposAttach;
      JET_LOGTIME logtimeDetach;
      JET_LGPOS lgposDetach;
      JET_SIGNATURE signLog;
      JET_BKINFO bkinfoFullPrev;
      JET_BKINFO bkinfoIncPrev;
      JET_BKINFO bkinfoFullCur;
      unsigned long fShadowingDisabled;
      unsigned long fUpgradeDb;
      unsigned long dwMajorVersion;
      unsigned long dwMinorVersion;
      unsigned long dwBuildNumber;
      long lSPNumber;
      unsigned long cbPageSize;
      unsigned long genMinRequired;
      unsigned long genMaxRequired;
      JET_LOGTIME logtimeGenMaxCreate;
      unsigned long ulRepairCount;
      JET_LOGTIME logtimeRepair;
      unsigned long ulRepairCountOld;
      unsigned long ulECCFixSuccess;
      JET_LOGTIME logtimeECCFixSuccess;
      unsigned long ulECCFixSuccessOld;
      unsigned long ulECCFixFail;
      JET_LOGTIME logtimeECCFixFail;
      unsigned long ulECCFixFailOld;
      unsigned long ulBadChecksum;
      JET_LOGTIME logtimeBadChecksum;
      unsigned long ulBadChecksumOld;
      unsigned long genCommitted;
      JET_BKINFO bkinfoCopyPrev;
      JET_BKINFO bkinfoDiffPrev;
    } JET_DBINFOMISC4;

成员

ulVersion

创建数据库的数据库引擎的本机版本。 请参阅 JetGetVersion 检索当前数据库引擎的本机版本。

ulUpdate

跟踪向后兼容的增量数据库格式更新。

ulVersion、ulUpdate =

含义

0x620,0

原始操作系统 Beta 格式 (4/22/97) 。

0x620,1

在目录中添加列,用于条件索引和 OLD (5/29/97) 。

0x620,2

在 IDB 中添加 fLocalizedText 标志 (6/5/97) 。

0x620,3

在SPLIT_BUFFER 10/30/97 (向空间树根页添加) 。

0x620,2

还原修订版本,使 ESE97 在 1/28/98 (保持向前) 。

0x620,3

将新的标记列添加到目录 ("CallbackData"和"CallbackDependencies") 。

0x620,4

SLV 支持:db 标头中的 signSLV、fSLVExists (5/5/98) 。

0x620,5

新的 SLV 空间树 (5/29/98) 。

0x620,6

SLV 空间映射 (10/12/98) 。

0x620,7

4 字节 IDXSEG (12/10/98) 。

0x620,8

新的模板列格式 (1/25/99) 。

0x620,9

排序的模板列 (6/24/99) 。

0x620,A

合并的基本代码 (2003/3/26) 。

0x620,B

新的校验和格式 (2004/1/08) 。

0x620,C

在 2004/1/15 (页中,最大密钥长度增加到 1000/2000 字节) 。

0x620,D

目录空间提示,space_header.v2 (2007/7/15) 。

0x620,E

将新的节点/区格式添加到空间管理器,将其用于 2007/8/9 (2007 年 8 月 9 日保留) 。

0x620,F

内部长值压缩 (2007/10/30) 。

0x620,10

2007/12/05 (的分隔长值压缩) 。

0x620,11

2007/12/29 (大型页面的新 LV 区块) 。

signDb

数据库签名 (包括创建) 。 此结构为 28 字节。

dbstate

这是数据库状态。

以下选项可用于此成员。

含义

JET_dbstateJustCreated
1

数据库刚刚创建。

JET_dbstateDirtyShutdown
2

数据库需要运行硬恢复或软恢复才能变得可用或可移动。 不应尝试移动此状态中的数据库。

JET_dbstateCleanShutdown
3

数据库为干净状态。 可以附加数据库而不附加任何日志文件。

JET_dbstateBeingConverted
4

正在升级数据库。

JET_dbstateForceDetach
5

内部。

lgposConsistent

如果数据库为脏状态,则为空。 这是上次使数据库处于干净关闭状态时所使用的日志位置。

logtimeConsistent

如果数据库为脏状态,则为空。 这是上次将数据库带到干净关闭状态的时间。

logtimeAttach

上次使用 JetAttachDatabase附加数据库的时间。

lgposAttach

上次使用 JetAttachDatabase附加数据库时所使用的日志位置。

logtimeDetach

上次使用 JetDetachDatabase分离数据库的时间。

lgposDetach

上次使用 JetDetachDatabase分离数据库时所使用的日志位置。

signLog

支持 ESE 基础结构,不能在代码中使用。

bkinfoFullPrev

支持 ESE 基础结构,不能在代码中使用。

bkinfoIncPrev

支持 ESE 基础结构,不能在代码中使用。

bkinfoFullCur

支持 ESE 基础结构,不能在代码中使用。

fShadowingDisabled

支持 ESE 基础结构,不能在代码中使用。

fUpgradeDb

支持 ESE 基础结构,不能在代码中使用。

dwMajorVersion

表示Windows NT更新数据库索引时的版本编号。 用于更新索引。

dwMinorVersion

表示Windows NT更新数据库索引时的版本编号。 用于更新索引。

dwBuildNumber

表示Windows NT更新数据库索引时的版本编号。 用于更新索引。

lSPNumber

表示Windows NT更新数据库索引时的版本编号。 用于更新索引。

cbPageSize

数据库页大小。 0 表示页面大小为 4 KB。

只有在向 JetGetDatabaseInfo JET_DbInfoMisc JetGetDatabaseFileInfo时,才检索此值。

genMinRequired

表示重播日志所需的最小日志生成。 这通常用作检查点生成。

genMaxRequired

表示重播日志所需的最大日志生成量。

logtimeGenMaxCreate

表示 genMax 日志文件的创建日期和时间。

ulRepairCount

已对此数据库调用修复次数。

logtimeRepair

表示上次修复的运行日期和时间。

ulRepairCountOld

上次碎片整理之前在此数据库上运行修复次数。

ulECCFixSuccess

修复了一个位错误并生成良好页面次数。

logtimeECCFixSuccess

表示修复最后一个位错误并生成良好页面的日期和时间。

ulECCFixSuccessOld

表示修复一个位错误并生成上一次修复前生成良好页次数。

ulECCFixFail

修复了一个位错误并导致页错误次数。

logtimeECCFixFail

表示修复最后一个位错误的日期和时间,导致页错误。

ulECCFixFailOld

修复一个位错误并导致上次修复前页出错次数。

ulBadChecksum

发现不可更正的 ECC/校验和错误次数。

logtimeBadChecksum

表示找到最后一个不可更正的 ECC/校验和错误的日期和时间。

ulBadChecksumOld

上次修复之前发现不可更正的 ECC/校验和错误次数。

genCommitted

提交到数据库的最大日志生成数。 通常是当前日志生成。

bkinfoCopyPrev

上次成功的复制备份。

bkinfoDiffPrev

上次成功的差异备份。 设置 bkinfoFullPrev 时,将重置此值。

要求

要求

客户端

需要 Windows Vista、Windows XP 或 Windows 2000 Professional。

Server

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

标头

在 Esent.h 中声明。

另请参阅

JET_BKINFO
JET_LOGTIME
JET_LGPOS
JET_SIGNATURE
JetGetDatabaseInfo
JetGetDatabaseFileInfo