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 的內容未定義。 Windowsxp: windows XP 中引進JET_IdxInfoLCID。 |
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。 成功時,USHORT 會保留建立索引時所使用的 cbVarSegMac 值。 如需cbVarSegMac的描述,請參閱JET_INDEXCREATE。 失敗時, pvBuffer 的內容未定義。 |
JET_IdxInfoKeyMost |
pvResult 會解譯為 USHORT。 成功時,USHORT 會保留建立索引時所使用的 cbKeyMost 值。 如需cbKeyMost的描述,請參閱JET_INDEXCREATE。 失敗時, pvBuffer 的內容未定義。 Windows Vista: windows Vista 中引進了JET_IdxInfoKeyMost。 |
JET_IdxInfoCreateIndex |
pvResult 會解譯為 JET_INDEXCREATE 結構。 失敗時, pvBuffer 的內容未定義。 Windows 7: windows 7 中引進了JET_IdxInfoCreateIndex。 |
JET_IdxInfoCreateIndex2 |
pvResult 會解譯為 JET_INDEXCREATE2 結構。 失敗時, pvBuffer 的內容未定義。 Windows 7: windows 7 中引進了JET_IdxInfoCreateIndex2。 |
傳回值
此函式會傳回具有下列其中一個傳回碼 的JET_ERR 資料類型。 如需可能 ESE 錯誤的詳細資訊,請參閱 可延伸的儲存引擎錯誤 和 錯誤處理參數。
傳回碼 |
Description |
---|---|
JET_errSuccess |
作業已成功完成。 |
JET_errIndexNotFound |
在指定的資料表中找不到指定的索引。 |
JET_wrnBufferTruncated |
當 pvResult 傳入的緩衝區太小。 緩衝區的內容未定義。 |
備註
JetGetIndexInfo 和 JetGetTableIndexInfo 會擷取索引的相同資訊。 差異在於如何指定資料表。 JetGetIndexInfo 預期資料庫 (dbid) 和資料表名稱 (szTableName) ,而 JetGetTableIndexInfo 預期資料表識別碼 (tableid) 。
規格需求
需求 | 值 |
---|---|
用戶端 |
需要 Windows Vista、Windows XP 或 Windows 2000 Professional。 |
Server |
需要 Windows Server 2008、Windows Server 2003 或 Windows 2000 Server。 |
標頭 |
在 Esent.h 中宣告。 |
程式庫 |
使用 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