Создание
и использование индексов
С целью ускорения
поиска и сортировки данных в любой СУБД используются индексы.
Индекс
является
средством, которое обеспечивает быстрый доступ киданным в таблице на основе
значений одного или нескольких столбцов. Индекс представляет собой упорядоченный
список значений и ссылок на те записи, в которых хранятся эти значения. Чтобы
найти нужные записи, СУБД сначала ищет требуемое значение в индексе, а затем
по ссылкам быстро отбирает соответствующие записи. Индексы бывают двух типов:
простые и составные.
Простые
индексы представляют собой индексы, созданные
по одному столбцу. Индекс, построенный по нескольким столбцам, называется
составным.
Примером составного индекса может быть индекс, построенный по столбцам "Фамилия"
и "Имя".
Однако применение
индексов приносит не только преимущества, но и недостатки. Главным среди них
является тот, что при добавлении и удалении записей или при обновлении значений
в индексном столбце требуется обновлять индекс, что при большом количестве индексов
в таблице может замедлять работу. Поэтому индексы обычно рекомендуется создавать
только для тех столбцов таблицы, по которым наиболее часто выполняется поиск
записей. Во многих СУБД (например, FoxPro) индексы хранятся в отдельных файлах
и являются предметом заботы разработчиков, т. к. при нарушении индекса поиск
данных выполняется некорректно. В Microsoft Access индексы хранятся в том же
файле базы данных, что и таблицы и другие объекты Access. Индексировать можно
любые поля, кроме МЕМО-полей, полей типа Гиперссылка и объектов OLE.
Чтобы создать
простой индекс, необходимо:
Рис. 2.24.
Установка индекса для поля
Ключевое поле
таблицы автоматически индексируется и свойству
Индексированное поле
(indexed)
присваивается значение Да
(Совпадения не допускаются)
(Yes (No duplicates)).
Составной
индекс создается в специальном диалоговом окне. Чтобы создать составной индекс,
необходимо:
Рис. 2.25.
Диалоговое окно
Индексы
Замечание
По умолчанию устанавливается порядок сортировки По возрастанию (Ascending). Для сортировки данных полей по убыванию в поле Порядок сортировки (Sort Order) в окне индексов укажите значение По убыванию (Descending).
Диалоговое
окно
Индексы
(indexes) используется также для просмотра, изменения и
удаления существующих индексов. Изменить можно:
Рис. 2.26.
Диалоговое окно индексов для таблицы "Клиенты"
Удаление индекса
выполняется точно так же, как удаление поля в Конструкторе таблиц. Просто выделите
строку с нужным индексом и нажмите клавишу <Delete> или воспользуйтесь
контекстным меню.