JetGetTableIndexInfo 関数

適用対象: Windows |Windows Server

JetGetTableIndexInfo 関数

JetGetTableIndexInfo 関数は、インデックスに関する情報を取得します。

    JET_ERR JET_API JetGetTableIndexInfo(
      __in          JET_SESID sesid,
      __in          JET_TABLEID tableid,
      __in          const tchar* szIndexName,
      __out         void* pvResult,
      __in          unsigned long cbResult,
      __in          unsigned long InfoLevel
    );

パラメーター

sesid

API 呼び出しに使用するデータベース セッション コンテキスト。

tableid

必要な情報を保持するインデックスを含むデータベース テーブル。

szIndexName

取得する情報を含むインデックスの名前。

pvResult

情報を受け取るバッファーへのポインター。 バッファーは、必要な型を保持するように配置する必要があります。 バッファーの型は InfoLevel パラメーターに依存します。

cbResult

pvResult パラメーターで渡されたバッファーのサイズ (バイト単位)。

InfoLevel

pvResult に格納する情報を指定します。 有効な値は次のとおりです。

価値

Meaning

JET_IdxInfo

pvResult、JET_INDEXLIST 構造体として解釈されます。 成功すると、 JET_INDEXLIST 構造体はインデックスに関する情報を受け取ります。 失敗した場合、 pvBuffer の内容は未定義です。

JET_IdxInfoLCID

pvResult は LCID として解釈されます。 成功すると、LCID はインデックスのロケール識別子を保持します。 失敗した場合、 pvBuffer の内容は未定義です。

JET_IdxInfoList

pvResult、JET_INDEXLIST 構造体として解釈されます。 成功すると、 JET_INDEXLIST 構造体はインデックスに関する情報を受け取ります。 失敗した場合、 pvBuffer の内容は未定義です。

JET_IdxInfoOLC

JET_IdxInfoOLCは廃止されています。

JET_IdxInfoResetOLC

JET_IdxInfoResetOLCは廃止されています。

JET_IdxInfoSpaceAlloc

pvResult は ULONG として解釈されます。 成功した場合、ULONG はインデックスの領域使用量を保持します。 失敗した場合、 pvBuffer の内容は未定義です。

JET_IdxInfoSysTabCursor

JET_IdxInfoSysTabCursorは廃止されています。

JET_IdxInfoLangid

JET_IdxInfoLangidは非推奨です。 代わりに JET_IdxInfoLCID を使用し、代わりに LANGIDFROMLCID マクロを 使用します。

JET_IdxInfoCount

pvResult は ULONG として解釈されます。 成功した場合、ULONG は指定されたテーブルのインデックスの数を保持します。 szIndexName は無視されます。 失敗した場合、 pvBuffer の内容は未定義です。

JET_IdxInfoVarSegMac

pvResult は USHORT として解釈されます。 成功した場合、USHORT はインデックスの作成時に使用される cbVarSegMac の値を保持します。 cbVarSegMac の説明については、JET_INDEXCREATEを参照してください。 失敗した場合、 pvBuffer の内容は未定義です。

JET_IdxInfoIndexId

pvResultJET_INDEXIDとして解釈されます。 成功すると、 JET_INDEXID 構造体はインデックスに関する情報を受け取ります。 失敗した場合、 pvBuffer の内容は未定義です。

JET_IdxInfoKeyMost

pvResult は USHORT として解釈されます。 成功した場合、USHORT はインデックスの作成時に使用される cbKeyMost の値を保持します。 cbKeyMost の説明については、 JET_INDEXCREATE 構造体を参照してください。 失敗した場合、 pvBuffer の内容は未定義です。

JET_IdxInfoCreateIndex

pvResult、JET_INDEXCREATE 構造体として解釈されます。 失敗した場合、 pvBuffer の内容は未定義です。

Windows 7: JET_IdxInfoCreateIndexは、Windows 7で導入されています。

JET_IdxInfoCreateIndex2

pvResult、JET_INDEXCREATE2 構造体として解釈されます。 失敗した場合、 pvBuffer の内容は未定義です。

Windows 7: JET_IdxInfoCreateIndex2は、Windows 7で導入されています。

JET_IdxInfoSpaceOwned pvResultULONGとして解釈されます。 成功した場合、 ULONG はインデックスが所有するページの数を保持します。 詳細については、「解説」を参照してください。

Windows 11:JET_IdxInfoSpaceOwned がWindows 11で導入されました。

JET_IdxInfoSpaceAvail pvResultULONGとして解釈されます。 成功した場合、 ULONG はインデックスで使用可能なページ数を保持します。 詳細については、「解説」を参照してください。

Windows 11:JET_IdxInfoSpaceAvail がWindows 11で導入されました。

戻り値

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

リターン コード

Description

JET_errSuccess

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

JET_errIndexNotFound

指定したインデックスが指定されたテーブルに見つかりません。

JET_wrnBufferTruncated

pvResult として渡されたバッファーが小さすぎます。 バッファーの内容は未定義です。

注釈

JetGetIndexInfoJetGetTableIndexInfo は、 インデックスに関する同じ情報を取得します。 違いは、テーブルの指定方法です。 JetGetIndexInfo はデータベース (dbid) とテーブルの名前 (szTableName) を受け取りますが、 JetGetTableIndexInfo にはテーブル識別子 (tableid) が必要です。

必要条件

Requirement 価値

クライアント

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

サーバー

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

ヘッダー

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

ライブラリ

ESENT.lib を使用します。

DLL

ESENT.dllが必要です。

Unicode

JetGetTableIndexInfoW (Unicode) および JetGetTableIndexInfoA (ANSI) として実装されます。

こちらもご覧ください

JET_COLUMNID
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JET_INDEXCREATE
JET_INDEXCREATE2JET_INDEXID
JetGetIndexInfoのJET_INDEXLIST