[11/15開催: PostgreSQL Conference Japan 2019 参加受付中] 
他のバージョンの文書 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

名前

ALTER OPERATOR — 演算子の定義を変更する

概要

ALTER OPERATOR name ( { left_type | NONE } , { right_type | NONE } )
    OWNER TO { new_owner | CURRENT_USER | SESSION_USER }

ALTER OPERATOR name ( { left_type | NONE } , { right_type | NONE } )
    SET SCHEMA new_schema

ALTER OPERATOR name ( { left_type | NONE } , { right_type | NONE } )
    SET ( {  RESTRICT = { res_proc | NONE }
           | JOIN = { join_proc | NONE }
         } [, ... ] )

説明

ALTER OPERATORは演算子の定義を変更します。

ALTER OPERATORを使用するには演算子の所有者でなければなりません。 所有者を変更するには、直接または間接的に新しい所有者ロールのメンバでなければなりません。 また、そのロールが演算子のスキーマにおいてCREATEを持たなければなりません。 (この制限により、演算子の削除と再作成で行うことができない処理を所有者の変更で行えないようになります。 しかし、スーパーユーザはすべての演算子の所有者を変更することができます。)

パラメータ

name

既存の演算子の名前です(スキーマ修飾名も可)。

left_type

演算子の左オペランドのデータ型です。 左オペランドがない演算子の場合はNONEを指定します。

right_type

演算子の右オペランドのデータ型です。 右オペランドがない演算子の場合はNONEを指定します。

new_owner

演算子の新しい所有者です。

new_schema

演算子の新しいスキーマです。

res_proc

この演算子の制約選択評価関数です。 既存の制約選択評価関数を削除するにはNONEを指定します。

join_proc

この演算子の結合選択評価関数です。 既存の結合選択評価関数を削除するにはNONEを指定します。

text型用の独自の演算子a @@ bの所有者を変更します。

ALTER OPERATOR @@ (text, text) OWNER TO joe;

int[]型用の独自の演算子a && bの制約および結合選択評価関数を変更します。

ALTER OPERATOR && (_int4, _int4) SET (RESTRICT = _int_contsel, JOIN = _int_contjoinsel);

互換性

標準SQLにはALTER OPERATOR文はありません。

関連項目

CREATE OPERATOR, DROP OPERATOR