Создание индексов

В системах управления базами данных индексация является механизмом для повышения производительности. Таблицы в базе данных могут иметь большое количество строк, которые хранятся в произвольном порядке, и их поиск по заданному значению путем последовательного просмотра таблицы строка за строкой может занимать много времени. Индекс формируется из значений одного или нескольких столбцов таблицы и подобно предметному указателю в книгах позволяет находить нужную строку по заданному значению.

Пользователь базы данных только решает, создавать ему индекс или нет, а способы его использования при выполнении запросов определяет исключительно система. После своего создания индексы работают и используются независимо от пользователей базы данных, и все заботы о поддержке индексов берет на себя система.

Типы индексов

Обычный индекс
Может быть создан на основе одного или нескольких столбцов таблицы. Столбцы, входящие в состав такого индекса могут содержать пустые и повторяющиеся значения.

Уникальный индекс
Уникальность означает, что никакие две строки не могут иметь индексы с одинаковыми значениями. В этом случае при создании индекса и при каждом добавлении информации система будет следить за тем, чтобы значения индексов не повторялись. Столбцы, входящие в состав уникального индекса не могут содержать пустых значений.

Первичный ключ
Уникальный индекс, выбранный для идентификации записей. У таблицы может быть много уникальных индексов и лишь один из них является первичным ключом.

Индексы можно создавать в процессе создания таблицы, описав в соответствующих разделах оператора CREATE TABLE. Для уже существующих таблиц индексы определяются с помощью операторов CREATE INDEX и ALTER TABLE.