JetGetIndexInfo 関数
適用対象: Windows |Windows Server
JetGetIndexInfo 関数
JetGetIndexInfo 関数は、インデックスに関する情報を取得します。
JET_ERR JET_API JetGetIndexInfo(
__in JET_SESID sesid,
__in JET_DBID dbid,
__in const tchar* szTableName,
__in const tchar* szIndexName,
__out void* pvResult,
__in unsigned long cbResult,
__in unsigned long InfoLevel
);
パラメーター
sesid
API 呼び出しに使用するデータベース セッション コンテキスト。
dbid
API 呼び出しに使用するデータベース識別子。
szTableName
取得する情報を含むインデックスを含むテーブルの名前。
szIndexName
取得する情報を含むインデックスの名前。
pvResult
必要な情報を受け取るバッファーへのポインター。 バッファーは、必要な型を保持するように配置する必要があります。 バッファーの型は InfoLevel パラメーターに依存します。
cbResult
pvResult として渡されるバッファーのサイズ (バイト単位)。
InfoLevel
pvResult に格納される情報。 このパラメーターには、次のオプションを使用できます。
値 |
説明 |
---|---|
JET_IdxInfo |
pvResult は 、JET_INDEXLIST 構造体として解釈されます。 成功すると、 JET_INDEXLIST 構造体はインデックスに関する情報を受け取ります。 失敗した場合、 pvBuffer の内容は未定義です。 |
JET_IdxInfoCount |
pvResult は ULONG として解釈されます。 成功すると、ULONG は指定されたテーブルのインデックスの数を保持します。 szIndexName は無視されます。 失敗した場合、 pvBuffer の内容は未定義です。 |
JET_IdxInfoIndexId |
pvResult は JET_INDEXIDとして解釈されます。 成功すると、 JET_INDEXID 構造体はインデックスに関する情報を受け取ります。 失敗した場合、 pvBuffer の内容は未定義です。 |
JET_IdxInfoLangid |
JET_IdxInfoLangidは非推奨です。 代わりに、JET_IdxInfoLCID および LANGIDFROMLCID マクロを使用してください。 |
JET_IdxInfoLCID |
pvResult は LCID として解釈されます。 成功すると、LCID はインデックスのロケール識別子を保持します。 失敗した場合、 pvBuffer の内容は未定義です。 Windows XP: JET_IdxInfoLCIDは Windows XP で導入されています。 |
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_IdxInfoVarSegMac |
pvResult は USHORT として解釈されます。 成功すると、インデックスの作成時に使用される cbVarSegMac の値が USHORT に保持されます。 cbVarSegMac の説明については、「JET_INDEXCREATE」を参照してください。 失敗した場合、 pvBuffer の内容は未定義です。 |
JET_IdxInfoKeyMost |
pvResult は USHORT として解釈されます。 成功すると、インデックスの作成時に使用される cbKeyMost の値が USHORT に保持されます。 cbKeyMost の説明については、「JET_INDEXCREATE」を参照してください。 失敗した場合、 pvBuffer の内容は未定義です。 Windows Vista: JET_IdxInfoKeyMostは Windows Vista で導入されています。 |
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_ERR データ型を返します。 考えられる ESE エラーの詳細については、「 拡張ストレージ エンジン エラー と エラー処理パラメーター」を参照してください。
リターン コード |
説明 |
---|---|
JET_errSuccess |
操作は正常に完了しました。 |
JET_errIndexNotFound |
指定したインデックスが、指定したテーブルに見つかりません。 |
JET_wrnBufferTruncated |
pvResult として渡されたバッファーが小さすぎます。 バッファーの内容は未定義です。 |
解説
JetGetIndexInfo と JetGetTableIndexInfo は、 インデックスに関する同じ情報を取得します。 違いは、テーブルの指定方法です。 JetGetIndexInfo ではデータベース (dbid) とテーブルの名前 (szTableName) が必要ですが、 JetGetTableIndexInfo にはテーブル識別子 (tableid) が必要です。
要件
要件 | 値 |
---|---|
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 |
JetGetIndexInfoW (Unicode) および JetGetIndexInfoA (ANSI) として実装されます。 |
参照
JET_COLUMNID
JET_ERR
JET_GRBIT
JET_INDEXCREATE
JET_INDEXID
JET_SESID
JET_TABLEID
JetGetTableIndexInfo