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 (6/5/97) 中添加 fLocalizedText 标志。

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/2004) 。

0x620,C

(2004/1/15/2004) ,4/8kb 页的最大密钥长度增加到 1000/2000 字节。

0x620,D

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

0x620,E

向空间管理器添加新节点/盘区格式,将其用于 2007/8/9/8/9 空间预留 (池) 。

0x620,F

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

0x620,10

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

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

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

logtimeConsistent

如果数据库处于脏状态,则为 Null。 这是数据库上次进入干净关闭状态的时间。

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。

仅当JET_DbInfoMisc传递到 JetGetDatabaseInfoJetGetDatabaseFileInfo 时,才会检索此值。

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