Struktura CDaoIndexInfo
CDaoIndexInfo Struktury obsahuje informace o indexu objekt definovaný pro data access objects (DAO).
struct CDaoIndexInfo {
CDaoIndexInfo( ); // Constructor
CString m_strName; // Primary
CDaoIndexFieldInfo* m_pFieldInfos; // Primary
short m_nFields; // Primary
BOOL m_bPrimary; // Secondary
BOOL m_bUnique; // Secondary
BOOL m_bClustered; // Secondary
BOOL m_bIgnoreNulls; // Secondary
BOOL m_bRequired; // Secondary
BOOL m_bForeign; // Secondary
long m_lDistinctCount; // All
// Below the // Implementation comment:
// Destructor, not otherwise documented
};
Parametry
m_strName
Pole objektu jedinečné názvy.Podrobnosti naleznete v tématu "Vlastnost Name" v nápovědě DAO.m_pFieldInfos
Ukazatel na pole CDaoIndexFieldInfo objektů označující pole klíče v indexu pole, která tabledef nebo sady záznamů.Každý objekt identifikuje jedno pole indexu.Vzestupné řazení výchozí index.Objekt indexu může mít jedno nebo více polí, představující index klíče pro každý záznam.Tyto mohou být vzestupně, sestupně, nebo kombinaci.m_nFields
Počet polí, které jsou uloženy v m_pFieldInfos.m_bPrimary
Pokud je vlastnost primární TRUE, objekt index představuje primární index.Primární index skládá z jednoho nebo více polí, která jednoznačně identifikují všechny záznamy v tabulce v předdefinovaném pořadí.Protože index pole musí být jedinečné, také nastavena vlastnost jedinečný objekt Index TRUE v DAO.Pokud primární index skládá z více polí, každé pole mohou obsahovat duplicitní hodnoty, ale kombinace hodnot z indexovaných polích musí být jedinečný.Primární index je tvořen klíč pro tabulku a obvykle obsahuje stejná pole jako primární klíč.Při nastavení primárního klíče pro tabulku primární klíč je automaticky definována jako primární index pro tabulku.Další informace naleznete v tématech "Primární vlastnosti" a "jedinečné" v nápovědě DAO.
[!POZNÁMKA]
Může existovat, nanejvýš jeden primární index pro tabulku.
m_bUnique
Určuje, zda objekt index představuje jedinečný index pro tabulku.Pokud je tato vlastnost TRUE, objekt index představuje jedinečný index.Jedinečný index skládá z jednoho nebo více polí, které logicky uspořádat všechny záznamy v tabulce Objednávky jedinečná, předdefinované.Index skládá z polí, musí být jedinečný pro celou tabulku hodnot v poli.Pokud index obsahuje více než jedno pole, každé pole mohou obsahovat duplicitní hodnoty, ale kombinace hodnot z indexovaných polích musí být jedinečný.Pokud primární i jedinečné vlastnosti objektu indexu jsou nastaveny na TRUE, je jedinečný a primární index: jedinečně identifikuje všechny záznamy v tabulce v předdefinované logické pořadí.Pokud primární vlastnost nastavena na FALSE, sekundární index je index.Sekundární indexy (klíče i nonkey) logicky uspořádat záznamy v předdefinovaném pořadí bez sloužící jako identifikátor pro záznamy v tabulce.
Další informace naleznete v tématech "Primární vlastnosti" a "jedinečné" v nápovědě DAO.
m_bClustered
Určuje, zda objekt index představuje seskupený index pro tabulku.Pokud je tato vlastnost TRUE, představuje index objekt seskupený index; jinak ne.Seskupený index je tvořen jedním nebo více nonkey polí, která, dohromady uspořádat všechny záznamy v tabulce v předdefinovaném pořadí.Seskupený index je data v tabulce doslova uloženy v pořadí určeném seskupený index.Seskupený index poskytuje efektivní přístup k záznamům v tabulce.Další informace naleznete v tématu "Clusteru vlastnost" v nápovědě DAO.[!POZNÁMKA]
Vlastnost Clustered ignorována u databází, které používají databázový stroj Microsoft Jet, protože databázový stroj nepodporuje seskupených indexů.
m_bIgnoreNulls
Označuje, zda jsou položky rejstříku pro záznamy obsahující hodnoty Null v jejich index pole.Pokud je tato vlastnost TRUE, pole s hodnotami Null, není nutné položku rejstříku.Chcete-li hledání záznamů pomocí pole rychleji, můžete definovat index pro pole.Povolit položky Null v indexovaném poli a očekávat mnoho položek na hodnotu Null, můžete nastavit vlastnost Ignorovat hodnoty Null pro objekt index TRUE ke snížení množství úložného prostoru, který používá index.Ignorovat nastavení vlastností a nastavení požadované vlastnosti společně určují, zda má záznam s hodnotou Null indexu položku rejstříku, jak ukazuje následující tabulka.Ignorovat
Požadováno
Index pole Null
True
False
Hodnota Null povoleno; přidané položky indexu.
False
False
Hodnota Null povoleno; přidána položka indexu.
TRUE nebo False
True
Hodnota Null není povoleno; přidané položky indexu.
Další informace naleznete v tématu "Vlastnost Ignorovat hodnoty Null" v nápovědě DAO.
m_bRequired
Určuje, zda objekt DAO index vyžaduje nenulovou hodnotu.Pokud je tato vlastnost TRUE, index objekt nepovoluje hodnotu Null.Další informace naleznete v tématu "Požadovaná vlastnost" v nápovědě DAO.Tip
Pokud nastavíte-li tuto vlastnost objektu DAO indexu nebo pole objektu (obsažené tabledef, sady záznamů nebo objektu querydef), nastavte pole objektu.Platnost nastavení vlastnosti pole objektu je zkontrolována, před který objekt indexu.
m_bForeign
Označuje, zda představuje objekt indexu cizího klíče v tabulce.Pokud je tato vlastnost TRUE, představuje index v tabulce cizího klíče.Cizí klíč se skládá z jednoho nebo více polí v cizí tabulce, které jednoznačně identifikují řádek v primární tabulce.Databázový stroj Microsoft Jet vytvoří objekt indexu pro cizí tabulky a nastaví vlastnost cizího při vytváření vztahu, který vynutí referenční integritu.Další informace naleznete v tématu "cizí" vlastností DAO nápovědy.m_lDistinctCount
Označuje číslo indexu objektu jedinečné hodnoty, které jsou zahrnuty v související tabulce.Zkontrolujte vlastnosti DistinctCount určit počet jedinečných hodnot nebo klíčů v indexu.Klávesy se počítá pouze jednou, i když může být více výskytů hodnoty Pokud index povoluje duplicitní hodnoty.Tato informace je užitečná v aplikacích, které pokusit optimalizovat data access vyhodnocením informace o indexu.Počet jedinečných hodnot se také nazývá mohutnost objekt indexu.Vlastnost DistinctCount nemusí vždy odrážet skutečný počet klíčů v určitém čase.Například změny způsobené vrácení transakce neprojeví okamžitě ve vlastnosti DistinctCount.Další informace naleznete v tématu "Vlastnost DistinctCount" v nápovědě DAO.
Poznámky
Uveďte odkazy na primární, sekundární a všechny výše jak vrácené informace GetIndexInfo členské funkce tříd CDaoTableDef a CDaoRecordset.
Index objekty nejsou zastoupeny třídou MFC.Místo toho objekty DAO podkladové objekty třídy MFC CDaoTableDef nebo CDaoRecordset obsahuje kolekci objektů index, nazývané kolekce indexů.Funkce členů přístup jednotlivých položek rejstříku informace poskytnout tyto třídy nebo současně s jejich CDaoIndexInfo voláním objektu GetIndexInfo členské funkce objektu obsahující.
CDaoIndexInfoKonstruktor a destructor na řádně přidělit a navrátit informace o indexu pole v m_pFieldInfos.
Informace načteny GetIndexInfo členské funkce objektu tabledef je uložen v CDaoIndexInfo struktury.Volání GetIndexInfo členské funkce obsahující objekt tabledef v kolekci indexů, jehož objekt index je uložen.CDaoIndexInfodefinuje také Dump vytvoří členské funkce ladění.Můžete použít Dump pro výpis obsahu CDaoIndexInfo objektu.
Požadavky
Záhlaví: afxdao.h