====== ALTER INDEX ====== ===== Версии сервера ===== ^ 0.9 ^ 1.0 ^ 1.5.3 ^ 1.5.4 ^ 1.5.5 ^ 2.0 ^ 2.0.3 ^ 2.0.4 ^ 2.1 ^ 2.5 ^ 3.0 ^ | Да | Да | Да | Да | Да | Да | Да | Да | Да | ? | ? | ===== Формат ===== ALTER INDEX name {ACTIVE | INACTIVE}; ^ Аргумент ^ Описание ^ |name |Имя существующего индекса.| |ACTIVE |Включает индекс - изменяет состояние INACTIVE индекса на ACTIVE.| |INACTIVE |Выключает индекс - изменяет состояние ACTIVE индекса на INACTIVE.| ===== Описание ===== ALTER INDEX делает неактивный индекс доступным для использования или отключает использование активного индекса. Отключение и включение индекса полезно, когда изменения в распределении индексированных данных, делают индекс несбалансированным. Перед вставкой или изменением большого количества строк, отключите индексы таблицы, чтобы избежать изменения идексов, затем активизируйте их заново. Чтобы перекомпоновать и восстановить баланс индекса, отключите и включите индекс. Этот метод создает заново сбалансированный индекс. Если индекс используется, ALTER INDEX не дает ни какого эффекта, пока индекс не освободится от использования. Инструкция ALTER INDEX терпит неудачу и возвращает ошибку, если индекс определен, как UNIQUE, PRIMARY KEY или FOREIGN KEY ограничение. Для изменения таких индексов, используйте [[DROP INDEX]], чтобы удалить индекс, и создать его заново с помощью [[CREATE INDEX]]. Индекс может быть изменен его создателем и пользователем SYSDBA. :!: Чтобы добавить или удалить столбцы или ключи, используйте [[DROP INDEX]], чтобы удалить индекс, и создать его заново с помощью [[CREATE INDEX]]. ===== Пример ===== Следующие инструкции отключают и включают индекс, чтобы его перекомпоновать: ALTER INDEX BUDGETX INACTIVE; ALTER INDEX BUDGETX ACTIVE; ===== См. также ===== [[ALTER TABLE]], [[CREATE INDEX]], [[DROP INDEX]], [[SET STATISTICS]] ===== Источник ===== langref.pdf