JET_DBINFOMISC4 结构

适用于: Windows |Windows Server

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 格式 (97 年 4 月 22 日) 。

0x620,1

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

0x620,2

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

0x620,3

(97 年 10 月 30 日) 向空间树根页添加SPLIT_BUFFER。

0x620,2

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

0x620,3

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

0x620,4

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

0x620,5

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

0x620,6

SLV 空间地图 (98 年 10 月 12 日) 。

0x620,7

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

0x620,8

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

0x620,9

(99 年 6 月 24 日) 对模板列进行排序。

0x620,A

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

0x620,B

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

0x620,C

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

0x620,D

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

0x620,E

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

0x620,F

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

0x620,10

(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 专业版。

服务器

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

标头

在 Esent.h 中声明。

另请参阅

JET_BKINFO
JET_LOGTIME
JET_LGPOS
JET_SIGNATURE
JetGetDatabaseInfo
JetGetDatabaseFileInfo