JetGetDatabaseFileInfo 関数
適用対象: Windows |Windows Server
JetGetDatabaseFileInfo 関数
JetGetDatabaseFileInfo 関数は、データベースに関するさまざまな種類の情報を取得します。 この API は、データベースが接続されている間、またはオンライン ( JetGetDatabaseInfo を使用) 中、またはデータベースエンジンまたはデータベース エンジンがオフラインの間 ( JetGetDatabaseFileInfo を使用) に呼び出すことができます。
JET_ERR JET_API JetGetDatabaseFileInfo(
__in const tchar* szDatabaseName,
__out void* pvResult,
__in unsigned long cbMax,
__in unsigned long InfoLevel
);
パラメーター
szDatabaseName
情報の取得元となるデータベースのパス。
pvResult
指定した情報を受け取るバッファーへのポインター。 バッファーのサイズ (バイト単位) は cbMax で渡されます。
この関数が失敗した場合、 pvResult の内容は未定義です。
pvResult に格納される情報は InfoLevel によって異なります。
cbMax
pvResult で渡されるバッファーのサイズ (バイト単位)。
InfoLevel
InfoLevel は、指定されたデータベースに関して取得する必要がある情報の種類を指定します。 pvResult の解釈方法に影響します。 一部 の InfoLevel オブジェクトは、API のオフライン (JetGetDatabaseFileInfo) またはオンライン (JetGetDatabaseInfo) バージョンでのみ使用できます。
指定された pvResult バッファーが小さすぎる場合は、 InfoLevel に応じて、JET_errInvalidBufferSizeまたはJET_errBufferTooSmallが返されます。
値 |
説明 |
||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
JET_DbInfoFilesize |
pvResult は QWORD (8 バイト) として解釈されます。 データベースのサイズをバイト単位で返します。 |
||||||||||||
JET_DbInfoUpgrade |
pvResult は 、JET_DBINFOUPGRADEとして解釈されます。 JET_DBINFOUPGRADE構造体には、指定したデータベースに関連する情報が設定されます。 |
||||||||||||
JET_DbInfoMisc |
pvResult は 、JET_DBINFOMISCとして解釈されます。 JET_DBINFOMISC構造体には、指定されたデータベースに関連する情報が設定されます。 |
||||||||||||
JET_DbInfoDBInUse |
pvResult は BOOL (4 バイト) として解釈されます。 これにより、データベース エンジンに現在開いているデータベースまたはアタッチされているデータベースがあるかどうかを返します。 Windows XP: この値は Windows XP で導入されています。 |
||||||||||||
JET_DbInfoPageSize |
pvResult は、符号なし long として解釈されます。 これにより、データベースのページ サイズがバイト単位で返されます。 Windows XP: この値は Windows XP で導入されています。 |
||||||||||||
JET_DbInfoCp |
これらの InfoLevels はまだサポートされておらず、既定値を返します。 これらの InfoLevels は使用しないでください。 |
||||||||||||
JET_DbInfoCountry |
これらの InfoLevels はまだサポートされておらず、既定値を返します。 これらの InfoLevels は使用しないでください。 |
||||||||||||
JET_DbInfoCollate |
JET_DbInfoCpと同じです。 |
||||||||||||
JET_DbInfoIsam |
これらの InfoLevel は 非推奨であり、現在サポートされていません。 これらの InfoLevels は使用しないでください。 |
||||||||||||
JET_DbInfoConnect |
JET_DbInfoIsamと同じです。 |
||||||||||||
JET_DbInfoFileType |
Windows Vista: この InfoLevel 値は、Windows Vista で導入されています。 pvResult は DWORD へのポインターとして扱われます。 列挙値を返します。これは、エンジンがこれを考慮するファイルの種類を示します。 ファイルの種類を次の表に示します。 これらの種類のファイルとそのエンジンの使用方法の詳細については、「 Extensible Storage Engine Files」を参照してください。
|
戻り値
この関数は、次のいずれかのリターン コードを使用して 、JET_ERR データ型を返します。 考えられる ESE エラーの詳細については、「 拡張可能ストレージ エンジン エラー 」および「 エラー処理パラメーター」を参照してください。
リターン コード |
説明 |
---|---|
JET_errSuccess |
操作は正常に完了しました。 |
JET_errFeatureNotAvailable |
要求された InfoLevel がJET_DbInfoIsamされました。 これはサポートされていません。 |
JET_errBufferTooSmall |
cbMax で指定されたバッファーが、目的の情報に対して小さすぎます。 |
JET_errInvalidBufferSize |
cbMax で指定されたバッファーは、目的の情報に対して正しいサイズではありません。 |
JET_errInvalidParameter |
指定されたパラメーターの 1 つに予期しない値が含まれていたか、複数のパラメーター値の組み合わせによって予期しない結果が発生しました。 指定された DBID が有効な (アタッチされている) データベースでない場合、 JetGetDatabaseInfo によってこのエラーが返されます。 このエラーは、要求された InfoLevel がそのバージョンの関数でサポートされていない場合、JetGetDatabaseFileInfo と JetGetDatabaseInfo によって返されます。 |
この関数が成功すると、要求されたデータが出力バッファーに返されます。
この関数が失敗した場合、出力バッファーは未定義の状態になります。
必要条件
Client |
Windows Vista、Windows XP、または Windows 2000 Professional が必要です。 |
[サーバー] |
Windows Server 2008、Windows Server 2003、または Windows 2000 Server が必要です。 |
Header |
Esent.h で宣言されています。 |
Library |
ESENT.lib を使用します。 |
[DLL] |
ESENT.dllが必要です。 |
Unicode |
JetGetDatabaseFileInfoW (Unicode) および JetGetDatabaseFileInfoA (ANSI) として実装されます。 |