DROP OPERATOR CLASS — 演算子クラスを削除する
DROP OPERATOR CLASS [ IF EXISTS ]name
USINGindex_method
[ CASCADE | RESTRICT ]
DROP OPERATOR CLASS
は既存の演算子クラスを削除します。
このコマンドを実行するには、演算子クラスの所有者でなければなりません。
DROP OPERATOR CLASS
はそのクラスで参照される演算子や関数をまったく削除しません。
演算子クラスに依存するインデックスがある場合、削除を成功させるためにはCASCADE
を指定する必要があります。
IF EXISTS
演算子クラスが存在しない場合でもエラーになりません。 この場合注意メッセージが発行されます。
name
既存の演算子クラスの名前です(スキーマ修飾名も可)。
index_method
この演算子クラスを使用するインデックスアクセスメソッドの名前です。
CASCADE
この演算子クラスに依存しているオブジェクト(インデックスなど)を自動的に削除し、さらにそれらのオブジェクトに依存するすべてのオブジェクトも削除します (5.13. 依存関係の追跡参照)。
RESTRICT
依存しているオブジェクトがある場合に、その演算子クラスの削除を拒否します。 こちらがデフォルトです。
DROP OPERATOR CLASS
は、そのクラスを含む演算子族を削除しません。
たとえその演算子族が空になったとしても(特にその演算子族がCREATE OPERATOR CLASS
で暗黙的に作成された場合でも)です。
空の演算子族は存在しても害はありませんが、整理するためにDROP OPERATOR FAMILY
を使用してこの演算子族を削除することができます。
あるいは最初にDROP OPERATOR FAMILY
を使って下さい。
widget_ops
という名前のB-tree演算子クラスを削除します。
DROP OPERATOR CLASS widget_ops USING btree;
演算子クラスを使用するインデックスが存在する場合、このコマンドは実行できません。
このようなインデックスを演算子クラスとともに削除するには、CASCADE
を指定します。
標準SQLにはDROP OPERATOR CLASS
は存在しません。