JetGetIndexInfo – funkce

platí pro: Windows | Windows Server

JetGetIndexInfo – funkce

Funkce JetGetIndexInfo načte informace o indexu.

    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
    );

Parametry

sesid

Kontext relace databáze, který se má použít pro volání rozhraní API.

dbid

Identifikátor databáze, který se má použít pro volání rozhraní API.

szTableName

Název tabulky obsahující index s informacemi, které se mají načíst.

szIndexName

Název indexu s informacemi, které se mají načíst.

pvResult

Ukazatel na vyrovnávací paměť, která obdrží požadované informace. Vyrovnávací paměť by měla být zarovnaná tak, aby odpovídala požadovanému typu. Typ vyrovnávací paměti je závislý na parametru InfoLevel .

cbResult

Velikost vyrovnávací paměti předané jako pvResult v bajtech.

InfoLevel

Informace, které budou uloženy v pvResult. Pro tento parametr lze použít následující možnosti.

Value Meaning

JET_IdxInfo

PvResult se interpretuje jako JET_INDEXLIST struktura. Při úspěchu obdrží struktura JET_INDEXLIST informace o indexu. Při selhání není definován obsah pvBufferu .

JET_IdxInfoCount

PvResult se interpretuje jako ULONG. Při úspěchu obsahuje ULONG počet indexů v zadané tabulce. szIndexName se ignoruje. Při selhání není definován obsah pvBufferu .

JET_IdxInfoIndexId

PvResult se interpretuje jako JET_INDEXID. Při úspěchu obdrží struktura JET_INDEXID informace o indexu. Při selhání není definován obsah pvBufferu .

JET_IdxInfoLangid

JET_IdxInfoLangid je zastaralá. Místo toho použijte JET_IdxInfoLCID a makro LANGIDFROMLCID .

JET_IdxInfoLCID

PvResult se interpretuje jako LCID. V případě úspěchu obsahuje LCID identifikátor národního prostředí indexu. Při selhání není definován obsah pvBufferu .

Windows XP: JET_IdxInfoLCID se zavádí v Windows XP.

JET_IdxInfoList

PvResult se interpretuje jako struktura JET_INDEXLIST . Při úspěchu obdrží struktura JET_INDEXLIST informace o indexu. Při selhání není definován obsah pvBufferu .

JET_IdxInfoOLC

JET_IdxInfoOLC je zastaralá.

JET_IdxInfoResetOLC

JET_IdxInfoResetOLC je zastaralá.

JET_IdxInfoSpaceAlloc

PvResult se interpretuje jako ULONG. Při úspěchu ULONG uchovává cílovou hustotu (ulDensity) indexu. Popis ulDensity najdete v JET_INDEXCREATE. Při selhání není definován obsah pvBufferu .

JET_IdxInfoSysTabCursor

JET_IdxInfoSysTabCursor je zastaralá.

JET_IdxInfoVarSegMac

PvResult se interpretuje jako USHORT. Při úspěchu obsahuje usHORT hodnotu cbVarSegMac použitou při vytvoření indexu. Popis cbVarSegMac najdete v JET_INDEXCREATE. Při selhání není definován obsah pvBufferu .

JET_IdxInfoKeyMost

PvResult se interpretuje jako USHORT. Při úspěchu obsahuje USHORT hodnotu cbKeyMost použitou při vytvoření indexu. Popis cbKeyMost najdete v JET_INDEXCREATE. Při selhání není definován obsah pvBufferu .

Windows Vista: JET_IdxInfoKeyMost se zavádí v Windows Vista.

JET_IdxInfoCreateIndex

PvResult se interpretuje jako struktura JET_INDEXCREATE . Při selhání není definován obsah pvBufferu .

Windows 7: JET_IdxInfoCreateIndex se zavádí v Windows 7.

JET_IdxInfoCreateIndex2

PvResult se interpretuje jako JET_INDEXCREATE2 struktura. Při selhání není definován obsah pvBufferu .

Windows 7: JET_IdxInfoCreateIndex2 se zavádí v Windows 7.

JET_IdxInfoSpaceOwned PvResult je interpretován jako ULONG. Při úspěchu ULONG obsahuje počet stránek vlastněných indexem. Další informace najdete v části Poznámky .

Windows 11:JET_IdxInfoSpaceOwned se zavádí v Windows 11.

JET_IdxInfoSpaceAvail PvResult je interpretován jako ULONG. V případě úspěchu ULONG obsahuje počet stránek dostupných v indexu. Další informace najdete v části Poznámky .

Windows 11:JET_IdxInfoSpaceAvail se zavádí v Windows 11.

Návratová hodnota

Tato funkce vrátí datový typ JET_ERR s jedním z následujících návratových kódů. Další informace o možných chybách ESE naleznete v tématu Rozšiřitelné chyby modulu úložiště a parametry zpracování chyb.

Návratový kód

Description

JET_errSuccess

Operace byla úspěšně dokončena.

JET_errIndexNotFound

Zadaný index nelze nalézt v zadané tabulce.

JET_wrnBufferTruncated

Vyrovnávací paměť předaná jako pvResult byla příliš malá. Obsah vyrovnávací paměti není definován.

Remarks

JetGetIndexInfo a JetGetTableIndexInfo načítají stejné informace o indexu. Rozdíl spočívá v tom, jak je zadaná tabulka. JetGetIndexInfo očekává databázi (dbid) a název tabulky (szTableName), zatímco JetGetTableIndexInfo očekává identifikátor tabulky (tableid).

Prostor spotřebovaný indexem je definován pomocí $Used + Avail = Owned$. Proto chcete-li získat počet stránek, použijte vzorec $Owned - Avail = Used$ (lze načíst pomocí JET_IdxInfoSpaceOwned a JET_IdxInfoSpaceAvail).

Požadavky

Požadavek Value

Klient

Vyžaduje Windows Vista, Windows XP nebo Windows 2000 Professional.

Server

Vyžaduje Windows Server 2008, Windows Server 2003 nebo Windows 2000 Server.

Záhlaví

Deklarováno v esent.h.

Knihovna

Použijte ESENT.lib.

Knihovny dll

Vyžaduje ESENT.dll.

Unicode

Implementováno jako JetGetIndexInfoW (Unicode) a JetGetIndexInfoA (ANSI).

Viz také

JET_COLUMNIDJET_ERR JET_GRBITJET_INDEXCREATEJET_INDEXCREATE2JET_INDEXIDJET_INDEXLISTJET_SESID JET_TABLEIDJetGetTableIndexInfo