CREATE OPERATOR FAMILY

CREATE OPERATOR FAMILY — определить новое семейство операторов

Синтаксис

CREATE OPERATOR FAMILY имя USING индексный_метод

Описание

Команда CREATE OPERATOR FAMILY создает новое семейство операторов. Семейство операторов определяет набор связанных классов операторов и, возможно, некоторые дополнительные операторы и вспомогательные функции, совместимые с этими классами операторов, но несущественные для функционирования любого отдельного индекса. (Операторы и функции, которые важны для индексов, следует сгруппировать в пределах соответствующего класса операторов, а не «слабо связывать» в семействе операторов. Как правило, операторы с одним типом данных привязаны к классам операторов, тогда как операторы с перекрестными типами данных могут быть слабо связаны в семействе операторов, содержащем классы операторов для обоих типов данных.)

Новое семейство операторов изначально пустое. Его нужно заполнить командами CREATE OPERATOR CLASS, которые добавят в него классы операторов, и, возможно, командами ALTER OPERATOR FAMILY, которые добавят «слабосвязанные» операторы и соответствующие вспомогательные функции.

Если задано имя схемы, то семейство операторов создается в указанной схеме, в противном случае — в текущей схеме. Два семейства операторов в одной схеме могут иметь одинаковое имя только в том случае, если они предназначены для разных индексных методов.

Пользователь, определяющий семейство операторов, становится его владельцем. В настоящее время для создания семейства операторов нужно быть суперпользователем. (Причина этого ограничения в том, что ошибочное определение семейства операторов может вызвать нарушения или даже сбой в работе сервера.)

Дополнительную информацию см. в разделе Интерфейсные расширения для индексов.

Параметры

имя

Имя создаваемого семейства операторов (может быть дополнено схемой).

индексный метод

Имя индексного метода, для которого предназначено это семейство операторов.

Совместимость

Команда CREATE OPERATOR FAMILY является расширением QHB. В стандарте SQL такой команды нет.

См. также

ALTER OPERATOR FAMILY, DROP OPERATOR FAMILY, CREATE OPERATOR CLASS, ALTER OPERATOR CLASS, DROP OPERATOR CLASS