ALTER OPERATOR

ALTER OPERATOR — 연산자 정의 바꾸기

요약

ALTER OPERATOR 이름 ( { 왼쪽자료형 | NONE } , { 오른쪽자료형 | NONE } )
    OWNER TO { 새소유주 | CURRENT_USER | SESSION_USER }

ALTER OPERATOR 이름 ( { 왼쪽자료형 | NONE } , { 오른쪽자료형 | NONE } )
    SET SCHEMA 새스키마

ALTER OPERATOR 이름 ( { 왼쪽자료형 | NONE } , { 오른쪽자료형 | NONE } )
    SET ( {  RESTRICT = { 제한함수 | NONE }
           | JOIN = { 조인함수 | NONE }
         } [, ... ] )

설명

ALTER OPERATOR 명령은 지정한 연산자 정의를 바꾼다.

ALTER OPERATOR 명령은 해당 연산자 소유주만 사용할 수 있다. 소유주를 바꿀 때는 기존 소유주가 새 소유주의 직간접적으로 구성원이어야 하며, 새 소유주는 해당 스키마에 대해서 CREATE 권한이 있어야 한다. (새로 바뀐 소유주가 해당 연산자를 지우거나 다시 만들 수 있도록 하기 위함이다. 반면 슈퍼유저는 이런 제약 없이 소유주를 바꿀 수 있다.)

매개 변수

이름

작업 대상 연산자 이름(스키마 이름 포함).

왼쪽자료형

연산에 사용되는 왼쪽 자료형; 이 자료형을 쓰지 않을 경우는 NONE.

오른쪽자료형

연산에 사용되는 오른쪽 자료형; 이 자료형을 쓰지 않을 경우는 NONE.

새소유주

해당 연산자의 새 소유주 이름.

새스키마

해당 연산자의 새 스키마 이름.

제한함수

해당 연산자용 제한 선택 추정자 함수; NONE으로 지정하면, 기존 제한함수를 지운다.

조인함수

해당 연산자용 조인 선택 추정자 함수; 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);

호환성

ALTER OPERATOR 구문은 표준 SQL 구문이 아니다.

관련 항목

CREATE OPERATOR, DROP OPERATOR