CREATE INDEX

Содержание раздела
  1. Поддерживаемые СУБД
  2. Связанные запросы
  3. Синтаксис
    1. Ключевое слово DATASOURCE_TYPE
  4. Варианты ответа
  5. Примеры
    1. Создание индекса во всех датасорсах
    2. Создание индекса в указанном датасорсе
    3. Создание индекса с указание метода

Поддерживается в версиях:  6.8.

Запрос создает индекс для физической таблицы в указанных или всех датасорсах.

Запрос доступен для любых таблиц поддерживаемых СУБД.

Поддерживаемые СУБД

Запрос доступен для СУБД ADB и ADP.

Синтаксис

CREATE [UNIQUE] INDEX index_name <index_creation_string> [DATASOURCE_TYPE (datasource_aliases)]

Параметры:

index_name

Имя создаваемого индекса.

index_creation_string

Текст команды на создание индекса. Передается в СУБД в неизменном виде.

Ключевое слово DATASOURCE_TYPE

Ключевое слово DATASOURCE_TYPE задает список имен датасорсов datasource_aliases, в которых создается индекс. Элементы списка перечисляются через запятую, каждый из них указывается в одинарных кавычках (например, 'adp', 'adp2').

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

Варианты ответа

В ответе возвращается:

  • пустой объект ResultSet при успешном выполнении запроса;
  • исключение при неуспешном выполнении запроса.

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

Примеры

Создание индекса во всех датасорсах

Создание индекса для физических таблиц sales_actual, связанных с логической таблицей sales, во всех датасорсах:

CREATE INDEX transaction_date ON marketing.sales_actual (transaction_date)

Создание индекса в указанном датасорсе

Создание индекса для standalone-таблицы marketing.agreements в датасорсе adp:

CREATE INDEX agreement_number ON marketing.agreements (number)
DATASOURCE_TYPE ('adp')

Создание индекса для таблицы СУБД test_marketing.table1 в датасорсе adp2:

CREATE INDEX index1 ON test_marketing.table1 (column1)
DATASOURCE_TYPE ('adp2')

Создание индекса с указание метода

Создание индекса для прокси-таблицы payments_proxy в датасорсе adp с методом HASH:

CREATE INDEX agreement_id ON marketing.payments_proxy USING HASH (agreement_id)
DATASOURCE_TYPE ('adp')