次の方法で共有


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_filetypeUnknown

ファイルの種類が不明であるか、ESE ファイルの種類ではありません。

JET_filetypeDatabase

ファイルはデータベース ファイルです。

JET_filetypeLog

ファイルはトランザクション ログ ファイルです。

JET_filetypeCheckpoint

ファイルはチェックポイント ファイルです。

JET_filetypeTempDatabase

ファイルは一時データベース ファイルです。

戻り値

この関数は、次のいずれかのリターン コードを使用して 、JET_ERR データ型を返します。 考えられる ESE エラーの詳細については、「 拡張可能ストレージ エンジン エラー 」および「 エラー処理パラメーター」を参照してください。

リターン コード

説明

JET_errSuccess

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

JET_errFeatureNotAvailable

要求された InfoLevel がJET_DbInfoIsamされました。 これはサポートされていません。

JET_errBufferTooSmall

cbMax で指定されたバッファーが、目的の情報に対して小さすぎます。

JET_errInvalidBufferSize

cbMax で指定されたバッファーは、目的の情報に対して正しいサイズではありません。

JET_errInvalidParameter

指定されたパラメーターの 1 つに予期しない値が含まれていたか、複数のパラメーター値の組み合わせによって予期しない結果が発生しました。 指定された DBID が有効な (アタッチされている) データベースでない場合、 JetGetDatabaseInfo によってこのエラーが返されます。 このエラーは、要求された InfoLevel がそのバージョンの関数でサポートされていない場合、JetGetDatabaseFileInfoJetGetDatabaseInfo によって返されます。

この関数が成功すると、要求されたデータが出力バッファーに返されます。

この関数が失敗した場合、出力バッファーは未定義の状態になります。

必要条件

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) として実装されます。

参照

JET_ERR
JET_DBINFOMISC
JET_DBINFOUPGRADE
JetGetDatabaseInfo