Функция 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. При успешном выполнении USHORT содержит значение cbVarSegMac , используемое при создании индекса. Описание cbVarSegMac см. в JET_INDEXCREATE. При сбое содержимое pvBuffer не определено.

JET_IdxInfoKeyMost

PvResult интерпретируется как USHORT. При успешном выполнении USHORT содержит значение cbKeyMost , используемое при создании индекса. Описание 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).

Требования

Требование Значение

Клиент

Требуется Windows Vista, Windows XP или Windows 2000 Professional.

Сервер

Требуется Windows Server 2008, Windows Server 2003 или Windows 2000 Server.

Верхняя часть

Объявлено в Esent.h.

Библиотека

Используйте ESENT.lib.

DLL

Требуется ESENT.dll.

Юникод

Реализовано как JetGetIndexInfoW (Юникод) и JetGetIndexInfoA (ANSI).

См. также:

JET_COLUMNID
JET_ERR
JET_GRBIT
JET_INDEXCREATE
JET_INDEXID
JET_SESID
JET_TABLEID
JetGetTableIndexInfo