JetGrowDatabase 函数

适用于: Windows |Windows服务

JetGrowDatabase 函数

JetGrowDatabase 函数扩展当前打开的数据库的大小。

    JET_ERR JET_API JetGrowDatabase(
      __in          JET_SESID sesid,
      __in          JET_DBID dbid,
      __in          unsigned long cpg,
      __in          unsigned long* pcpgReal
    );

参数

sesid

要用于 API 调用的数据库会话上下文。

dbid

要扩展的数据库。

cpg

所需的数据库大小(以页为限)。

pcpgReal

一个指针,它指向接收 API 调用后的数据库大小的数字。 如果 API 调用失败, pcpgReal 的内容将不确定。

返回值

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

返回代码

描述

JET_errSuccess

操作已成功完成。

JET_errDiskFull

卷上的可用空间不足,无法执行增长操作。

JET_errDiskIO

JetSetDatabaseSize返回了与文件相关的错误。 有关可能返回的其他文件相关错误的详细信息,请参阅 JetSetDatabaseSize

注解

如果在插入大量数据之前调用 JetGrowDatabase ,则数据库文件将在一个操作中增长。 这会降低数据库文件在文件系统级别上碎片的可能性,同时减少数据库文件必须增长的次数。 将数据库文件增长一次比多次增长更快。

目前仅支持增长文件。 若要压缩文件,请使用 esentutl.exe 实用程序的碎片整理功能。

若要设置未打开的数据库的大小,请参阅 JetSetDatabaseSize

文件大小可能与在 pcpgReal 中返回的页数不匹配。 PcpgReal 中可能不会计算两个附加的保留页面。

要求

要求

客户端

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

Server

需要 Windows server 2008、Windows Server 2003 或 Windows 2000 服务器。

标头

在 Esent 中声明。

Library

使用 ESENT。

.DLL

需要 ESENT.dll。

另请参阅

JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JET_OBJECTINFO
JET_OBJECTLIST
JetSetDatabaseSize