CDaoIndexInfo структура

CDaoIndexInfo структура має такий вигляд:

структура CDaoIndexInfo {
 nbsp;  CDaoIndexInfo ();                   / / Конструктор

CString m_str&Name;                  / / Первинного
    CDaoIndexFieldInfo * m_pFieldInfos;  / / Первинного
    короткий m_nFields;                    / / Первинного
    BOOL m_bPrimary;                    / / Середньої
    BOOL m_bUnique;                     / / Середньої
    BOOL m_bClustered;                  / / Середньої
    BOOL m_bIgnoreNulls;                / / Середньої
    BOOL m_bRequired;                   / / Середньої
    BOOL m_bForeign;                    / / Середньої
    довгий m_lDistinctCount;              / / Все

/ / Нижче в / / здійснення коментар:
    / / Деструктор, в іншому випадку не задокументовані
}
 

CDaoIndexInfo структура містить інформацію про об'єкт індекс, визначені для об'єкти доступу до даних (DAO). Посилання на початкові, середні та всі перераховані вище показують, як інформація повертається функцією GetIndexInfo член в класи, CDaoTableDef і CDaoRecordset.

Індекс об'єктів не представлені на MFC клас. Замість цього, об'єктів DAO Основні об'єкти MFC клас CDaoTableDef або CDaoRecordset містять набір індекс об'єкти, називається набір показників. Ці класи постачання функцій-членів для доступу до окремих елементів індексу інформації або для виконання їх всі відразу з CDaoIndexInfo об'єктом виклику функції член GetIndexInfo , що містить об'єкта.

CDaoIndexInfo має конструктор і деструктор для належним чином виділяти та deallocate відомості індекс поля в m_pFieldInfos.

Члени

m_strName

Однозначно імена полів об'єкта. Для детальної інформації зверніться до розділу "Властивості ім'я" у довідці DAO.

m_pFieldInfos

Вказівник на цілий ряд CDaoIndexFieldInfo об'єкти, вказавши поля, які tabledef або набір записів ключових полів в індексі. Кожен об'єкт визначає полів в індексі. За промовчанням індекс замовлення за зростанням. Об'єкт індексу може мати одне або кілька полів, що представляють індекс ключів для кожного запису. Дані можуть бути зростання, за спаданням, або комбінацію.

m_nFields

Кількість полів, які зберігаються в m_pFieldInfos.

m_bPrimary

Якщо первинної нерухомості,індекс об'єкт являє собою основний індекс. Основний індекс складається з одного або кількох полів, які унікально визначають усі записи в таблиці в попередньо порядку. Тому що індекс поля мають бути унікальними, унікальні властивості індексу об'єкт також встановлено ВІРНО в DAO. Якщо основний індекс складається з більш ніж одне поле, кожне поле може містити повторювані значення, але кожне сполучення значень усіх індексовані поля мають бути унікальними. Основний індекс складається з ключ для таблиці і зазвичай містить однакові поля як первинний ключ.

Коли ви встановлюєте первинний ключ для таблиці, первинний ключ автоматично визначається як первинний індексу з таблиці. Для отримання додаткових відомостей зверніться до розділів "Первинної нерухомості" і "Унікальний власності" в довідці Microsoft DAO.

Примітка   Там можуть бути, в більшості, один основний індекс на таблиці.

m_bUnique

Вказує, чи об'єкт індекс являє собою унікальний індекс для таблиці. Якщо ця властивість,індекс об'єкт являє собою індекс, який є унікальним. Унікальний індекс складається з одного або кількох полів, які логічно організувати всі записи в таблиці унікальним, попередньо визначений порядок. Якщо індекс складається з полів, значення в цьому полі мають бути унікальними для всієї таблиці. Якщо індекс складається з більш ніж одне поле, кожне поле може містити повторювані значення, але кожне сполучення значень усіх індексовані поля мають бути унікальними.

Якщо як унікальний і первинної властивості об'єкта індекс є значення TRUE, індекс є унікальним і первинного: це однозначно ідентифікує всі записи з таблиці в попередньо логічній послідовності. Якщо Основна властивість має значення False, індекс є середній індекс. Вторинний індекси (як основні, так і nonkey) логічно організувати записи в попередньо порядку без виступає як ідентифікатор для записів у таблиці.

Для отримання додаткових відомостей зверніться до розділів "Первинної нерухомості" і "Унікальний власності" в довідці Microsoft DAO.

m_bClustered

Вказує, чи об'єкт індекс представляє Об'ємний варіант звичайної індекс для таблиці. Якщо ця властивість,індекс об'єкт представляє Об'ємний варіант звичайної індекс; в іншому випадку, це не так. Об'ємний варіант звичайної Індекс складається з одного або більше nonkey поля, які, взяті разом, організувати всі записи в таблиці в попередньо порядку. З Об'ємний варіант звичайної індекс дані в таблиці зберігається буквально в порядку, заданому в Об'ємний варіант звичайної індекс. Об'ємний варіант звичайної індексу забезпечує ефективний доступ до таблиці. Щоб отримати додаткові відомості зверніться до розділу "Об'єднані власності" в довідці Microsoft DAO.

Примітка   Clustered властивість ігнорується для баз даних, які використовують Microsoft Jet database engine, Реактивний двигун бази даних підтримує Об'ємний варіант звичайної індекси.

m_bIgnoreNulls

Вказує, чи є елементи індексу для записів, які мають значення Null в свій індекс поля. Якщо ця властивістьполя зі значенням Null не мають елемента предметного покажчика. Щоб зробити пошук записів за допомогою поля швидше, можна визначити індекс для цього поля. Якщо дозволити елементи Null в індексованому полі і очікуємо, що багато записів, щоб бути Null, можна встановити властивість IgnoreNulls об'єкта, індекс, правда, щоб зменшити обсяг дискового простору, що використовує індекс. Настройка властивостей IgnoreNulls і налаштування властивість обов'язково разом визначити, чи запису зі значенням Null індексу елемент предметного покажчика, Нижченаведена таблиця показує, як.

IgnoreNulls Необхідні Значення Null в поле індекс
Правда Помилкові Значення Null, допускається; немає елемента покажчика, додав.
Помилкові Помилкові Значення Null, допускається; елемент індексу, додав.
TRUE або False Правда Значення null не дозволяється; немає елемента покажчика, додав.

Щоб отримати додаткові відомості зверніться до розділу "IgnoreNulls власності" в довідці Microsoft DAO.

m_bRequired

Вказує, чи є об'єктом індекс DAO вимагає значення не Null.Якщо ця властивість,індекс об'єкт не дозволяють значення Null. Щоб отримати додаткові відомості зверніться до розділу "Обов'язково власності" в довідці Microsoft DAO.

Порада   Коли можна встановити для цієї властивості або об'єкті індекс ДАО, або поле об'єкта (міститься на tabledef, набір записів або querydef об'єкт), встановіть його для поля об'єкта. Термін дії значення властивості поля об'єкта перевіряється до цього об'єкта індекс.

m_bForeign

Вказує, чи об'єкт індекс представляє зовнішній ключ в таблиці. Якщо ця властивість,індекс представляє зовнішній ключ в таблиці. Зовнішній ключ складається з одного або кількох полів зовнішньої таблиці, які унікально визначають рядок у головній таблиці. Обробник баз даних Microsoft Jet створює індекс об'єктів для зовнішньої таблиці і встановлює іноземну власність, під час створення зв'язку, який забезпечує цілісності даних. Щоб отримати додаткові відомості зверніться до розділу "Іноземної власності" в довідці Microsoft DAO.

m_lDistinctCount

Вказує кількість унікальних значень індексу об'єкта, що входять до відповідних. Перевіряйте майно DistinctCount визначити, скільки унікальних значень або розділи, в індекс. Будь-яку клавішу враховуються лише один раз, хоча, може бути кілька входжень цього значення, якщо індекс дозволяє повторювані значення. Ця інформація є корисною у застосунки, які намагаються оптимізувати доступ до даних шляхом оцінки індекс інформації. Кількість унікальних значень — також відома як потужність об'єкта індекс. Властивість DistinctCount не завжди відображатимуть фактична кількість ключів в певний час. Наприклад, зміни, викликані операції скасування не будуть відображені негайно DistinctCount властивості. Щоб отримати додаткові відомості зверніться до розділу "DistinctCount власності" в довідці Microsoft DAO.

Коментарі

Отримано GetIndexInfo функцію член tabledef об'єкта зберігаються у CDaoIndexInfo структуру. Викликати функцію член GetIndexInfo містять tabledef об'єкта, в яких показників колекція зберігається індекс об'єкта. CDaoIndexInfo також визначає член функції Dump налагодження будує. Дамп можна використовувати для скидання вмісту об'єкта CDaoIndexInfo.

Інформації про використання цього та інших структур MFC DAO інформації, перегляньте статтю ДАО збірки: отримання інформації про об'єкти ДАО в Visual C++ програміста керівництво.

Дивіться також CDaoTableDef::GetIndexInfo

Index