JetResizeDatabase 関数
適用対象: Windows |Windows Server
JetResizeDatabase 関数は、現在開いているデータベースのサイズを拡張または縮小します。
JetResizeDatabase 関数は、Windows 8 オペレーティング システムで導入されました。
JET_ERR JET_API JetResizeDatabase(
__in JET_SESID sesid,
__in JET_DBID dbid,
__in unsigned long cpg,
__out unsigned long* pcpgActual,
__in const JET_GRBIT grbit
);
パラメーター
sesid
API 呼び出しに使用するデータベース セッション コンテキスト。
dbid
拡張されるデータベース。
Cpg
データベースの要求されたサイズ (ページ単位)。
pcpgActual
API 呼び出し後にデータベースのサイズを受け取る数値へのポインター (ページ単位)。 API 呼び出しが失敗した場合、 pcpgActual パラメーターの内容は未定義です。
grbit
次の表に示す 0 個以上の値を指定するビットのグループ。
値 |
説明 |
---|---|
JET_bitResizeDatabaseOnlyGrow |
データベースのみを拡張します。 サイズ変更呼び出しでデータベースが圧縮される場合は、何も行いません。 |
戻り値
この関数は、次の表に示すリターン コードのいずれかを使用して、 JET_ERR データ型を返します。 拡張可能記憶域エンジン (ESE) エラーの詳細については、「 Extensible Storage Engine Errors and Error Handling Parameters」を参照してください。
リターン コード |
説明 |
---|---|
JET_errSuccess |
操作は正常に完了しました。 |
JET_errDiskFull |
ボリュームに、拡張操作を実行するための空き領域が不足しています。 |
JET_errDiskIO |
JetSetDatabaseSize 関数によってファイル関連のエラーが返されました。 返される可能性があるその他のファイル関連エラーの詳細については、「 JetSetDatabaseSize」を参照してください。 |
解説
大量のデータを挿入する前に JetResizeDatabase 関数を呼び出すと、データベース ファイルは 1 回の操作で拡張されます。 これにより、データベース ファイルがファイル システム レベルで断片化される可能性が減り、データベース ファイルを拡張する必要がある回数も減ります。 データベース ファイルを 1 回増やすと、複数回増加するよりも高速になる場合があります。
開かないデータベースのサイズを設定するには、「 JetSetDatabaseSize」を参照してください。
ファイル サイズが 、pcpgReal パラメーターで返されるページ数と一致しない可能性があります。 pcpgReal パラメーターでは、2 つの追加の予約ページがカウントされない場合があります。
必要条件
要件 | 値 |
---|---|
Client |
Windows 8が必要です。 |
[サーバー] |
Windows Server 2012が必要です。 |
Header |
Esent.h で宣言されています。 |
Library |
ESENT.lib を使用します。 |
[DLL] |
ESENT.dllが必要です。 |
関連項目
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JET_OBJECTINFO
JET_OBJECTLIST
JetSetDatabaseSize