Название: Базы данных. Концепция баз данных, реляционная модель данных, языки SQL и XML (Токмаков Г. П.) Жанр: Информационные системы и технологии Просмотров: 1437 |
3.5. создание индексов
3.5.1. О БЩИЙ ФОРМАТ ОПЕРАТОРА CREATE INDEX
Индекс может быть создан оператором:
CREATE [UNIQUE] [ASC[ENDING]|DESC[ENDING]] INDEX ИмяИндекса ON ИмяТаблицы (столбец1 [, столбец2 ...]);
– UNIQUE − требует создания уникального индекса; – ASC[ENDING] − указывает на необходимость сортировки значений индексных полей по возрастанию (по умолчанию); – DESC[ENDING] − указывает на необходимость сортировки значений индекс- ных полей по убыванию; – ИмяИндекса − имя создаваемого индекса; – ИмяТаблицы − имя таблицы, для которой создается индекс; – столбецN − имена столбцов, по которым создается индекс. Ниже дан пример инструкции CREATE INDEX, которая создает индекс для таблицы ZAKAZY на основе столбцов MFR и PRODUCT и содержит требование уни- кальности для комбинации этих столбцов:
CREATE UNIQUE INDEX ORD_PROD_IDX ON ZAKAZY (MFR, PRODUCT);
3.5.2. Н ЕОБ Х О Д ИМОСТ Ь СОЗДА НИЯ ИНД Е КСОВ
Индексы необходимо создавать в том случае, когда по столбцу или группе столбцов: – часто производится поиск в базе данных (столбец или группа часто пере- числяются в предложении WHERE оператора SELECT); – часто строятся объединения таблиц; – часто производится сортировка (т. е. столбец или столбцы часто использу- ются в предложении ORDER BY оператора SELECT. Не рекомендуется строить индексы по столбцам или группам столбцов, ко- торые: – редко используются для поиска, объединения и сортировки результатов за- просов; – часто меняют значение, что приводит к необходимости часто обновлять ин- декс и способно существенно замедлить скорость работы с базой данных; – содержат небольшое число вариантов значения.
3.5.3. У ДАЛЕНИЕ ИНДЕ КСА
Для удаления индекса, созданного оператором CREATE INDEX, используется оператор
DROP INDEX <имя_индекса>;
Нельзя удалить индекс, созданный в результате определения первичного и внешнего ключей. Для этой цели следует использовать оператор ALTER TABLE.
|
|