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 エラーの詳細については、「拡張Storage エンジン エラーエラー処理パラメーター」を参照してください。

リターン コード

説明

JET_errSuccess

操作は正常に完了しました。

JET_errDiskFull

ボリュームに、拡張操作を実行するための十分な空き領域がありません。

JET_errDiskIO

JetSetDatabaseSize によってファイル関連のエラーが返されました。 返される可能性があるその他のファイル関連エラーの詳細については、 JetSetDatabaseSize を参照してください。

解説

大量のデータを挿入する前に JetGrowDatabase を呼び出すと、データベース ファイルは 1 回の操作で拡張されます。 これにより、データベース ファイルがファイル システム レベルで断片化される可能性が減り、データベース ファイルを拡大する必要がある回数も減ります。 データベース ファイルを 1 回増やすと、複数回増加するよりも高速になる場合があります。

現在、ファイルの拡大のみがサポートされています。 ファイルを圧縮するには、esentutl.exeユーティリティ プログラムの最適化機能 使用します。

開かされていないデータベースのサイズを設定するには、 JetSetDatabaseSize に関するページを参照してください。

ファイル サイズが 、pcpgReal で返されるページ数と一致しない可能性があります。 pcpgReal ではカウントされない可能性がある追加の予約ページが 2 つあります。

要件

要件

Client

Vista、Windows XP、または 2000 Professional Windows Windows必要です。

[サーバー]

Windows Server 2008、Windows Server 2003、または Windows 2000 Server が必要です。

ヘッダー

Esent.h で宣言されています。

Library

ESENT.lib を使用します。

[DLL]

ESENT.dllが必要です。

参照

JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JET_OBJECTINFO
JET_OBJECTLIST
JetSetDatabaseSize