DROP OPERATOR CLASS

Удаляет класс операторов.

Синтаксис

DROP OPERATOR CLASS [IF EXISTS] <name> USING <index_method> [CASCADE | RESTRICT]

Описание

DROP OPERATOR удаляет существующий класс операторов. Для выполнения этой команды вы должны быть владельцем класса операторов.

DROP OPERATOR CLASS не удаляет операторы или функции, на которые ссылается класс. Если существуют индексы, зависящие от класса операторов, для завершения удаления необходимо указать параметр CASCADE.

Параметры

  • IF EXISTS
    • Не выдавать ошибку, если класс операторов не существует. В этом случае будет выдано уведомление.
  • name
    • Имя (при необходимости с указанием схемы) существующего класса операторов.
  • index_method
    • Имя метода доступа к индексу, для которого предназначен класс операторов.
  • CASCADE
    • Автоматически удалять объекты, зависящие от класса операторов (например, индексы), а также все объекты, зависящие от этих объектов.
  • RESTRICT
    • Запрещать удаление класса операторов, если какие-либо объекты зависят от него. Это значение по умолчанию.

Примечания

DROP OPERATOR CLASS не удаляет семейство операторов, содержащее данный класс, даже если в семействе больше ничего не осталось (в частности, в случае, когда семейство было неявно создано командой CREATE OPERATOR CLASS). Пустое семейство операторов безвредно, однако для поддержания порядка вы можете захотеть удалить его с помощью DROP OPERATOR FAMILY; либо, возможно, лучше использовать DROP OPERATOR FAMILY изначально.

Примеры

Удаление класса операторов B-tree widget_ops:

DROP OPERATOR CLASS widget_ops USING btree;

Эта команда не выполнится, если существуют индексы, использующие данный класс операторов. Добавьте CASCADE, чтобы удалить такие индексы вместе с классом операторов.

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

В стандарте SQL отсутствует оператор DROP OPERATOR CLASS.

Смотрите также

ALTER OPERATOR CLASS, CREATE OPERATOR CLASS, DROP OPERATOR FAMILY