이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.PostgreSQL : 문서 : 17 : 스포츠 토토 베트맨 Alter Family버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

변경 운영자 가족

이름

ALTER OPERATOR FAMILY -- 변경 토토 캔 제품군의 정의

시놉시스

ALTER OPERATOR 제품군이름사용 중index_method추가
   운영자전략_번호 operator_name ( op_type, op_type) [ 다시 확인 ]
   | 기능지원_번호 [ ( op_type [ , op_type ] ) ] 기능 이름 ( argument_type[, ...] )
   [, ... ]
ALTER 운영자 제품군이름사용 중index_method드롭
   운영자전략_번호 ( op_type [ , op_type] )
   | 기능지원_번호 ( op_type [ , op_type] )
   [, ... ]
ALTER 운영자 제품군이름사용 중index_method다음으로 이름 바꾸기:새 이름ALTER OPERATOR 제품군이름사용 중index_method소유자:새 소유자

설명

ALTER OPERATOR 제품군변경 연산자 제품군의 정의. 연산자를 추가할 수 있으며 가족에게 기능을 지원하거나 가족에서 제거하거나 가족의 이름이나 소유자를 변경합니다.

연산자와 지원 기능이 계열에 추가될 때 와 함께ALTER OPERATOR 제품군, 그렇지 않습니다. 제품군 내 특정 토토 캔 클래스의 일부이지만 그냥"느슨한"가족 내에서. 이 이는 이러한 연산자와 함수가 다음과 호환됨을 나타냅니다. 가족의 의미는 정확하지만 필수는 아닙니다. 특정 인덱스의 기능. (연산자와 함수는 그래서 필수이므로 연산자 클래스의 일부로 선언해야 합니다. 대신; 참조PostgreSQL : 문서.) PostgreSQL가족의 느슨한 구성원이 Family는 언제든지 가능하지만 Operator 클래스의 구성원은 전체 클래스와 인덱스를 삭제하지 않고 삭제되었습니다. 그것에 의존하십시오. 일반적으로 단일 데이터 유형 연산자 및 함수 지원하는 데 필요하기 때문에 연산자 클래스의 일부입니다. 해당 특정 데이터 유형에 대한 인덱스인 반면, cross-data-type 연산자와 함수는 계열의 느슨한 구성원이 됩니다.

이용하려면 슈퍼유저여야 합니다.변경 운영자 가족. (이 제한은 잘못된 연산자 제품군 정의는 혼란을 주거나 충돌을 일으킬 수 있습니다. 서버.)

ALTER OPERATOR 제품군하지 않습니다 현재 운영자 제품군 정의에 포함되어 있는지 확인하십시오. 인덱스 메소드에 필요한 모든 연산자와 함수, 연산자와 함수가 일관성 있는 집합을 형성하는지 여부. 유효한 연산자를 정의하는 것은 사용자의 책임입니다. 가족.

참조PostgreSQL: Tài liệu: 8.3: Giao thoa các tiện ích mở rộ스포츠 토토 사이트 cho các chỉ mục더 자세히 알아보기 정보.

매개변수

이름

기존 이름(선택적으로 스키마 한정) 연산자 계열.

index_method

이 연산자 계열의 색인 메소드 이름은 다음과 같습니다. for.

전략_번호

토토 캔에 대한 인덱스 방법의 전략 번호 토토 캔 계열과 연관되어 있습니다.

operator_name

연산자의 이름(선택적으로 스키마 한정) 연산자 계열과 연관되어 있습니다.

op_type

안에운영자절, 토토 캔의 피토토 캔 데이터 유형 또는없음왼쪽 단항 또는 오른쪽 단항을 나타냄 운영자. 비교 가능한 구문과 달리토토 캔 클래스 생성, 피토토 캔 데이터 유형은 항상 지정되어야 합니다.

안에기능 추가절, 함수가 지원하려는 피연산자 데이터 유형, 함수의 입력 데이터 유형과 다른 경우. B-트리 및 해시 인덱스의 경우 지정할 필요가 없습니다.op_type이후 함수의 입력 데이터 유형은 항상 올바른 유형입니다. 사용합니다. GIN 및 GiST 인덱스의 경우 다음을 지정해야 합니다. 함수와 함께 사용될 입력 데이터 유형입니다.

에서드롭 기능절, 함수가 지원하려는 피연산자 데이터 유형 지정해야 합니다.

재확인

존재하는 경우 색인은"손실"이 연산자의 경우 행 인덱스를 사용하여 검색된 내용을 다시 확인하여 다음을 확인해야 합니다. 그들은 실제로 다음과 관련된 자격 조항을 충족합니다. 이 연산자.

지원_번호

인덱스 메소드의 지원 절차 번호 연산자 계열과 관련된 함수입니다.

기능 이름

함수의 이름(선택적으로 스키마 한정) 그것은 운영자를 위한 인덱스 방법 지원 절차입니다. 가족.

argument_types

함수의 매개변수 데이터 유형.

새 이름

운영자 계열의 새 이름입니다.

새 소유자

운영자 가족의 새로운 소유자.

운영자그리고기능절은 어떤 순서로든 나타날 수 있습니다.

참고

다음에 주의하세요.드롭구문만 를 지정합니다."슬롯"연산자에서 제품군, 전략 또는 지원 번호 및 입력 데이터 유형별. 는 슬롯을 차지하는 연산자나 함수의 이름이 아닙니다. 언급됨. 또한,드롭 기능지정할 유형은 함수의 입력 데이터 유형입니다. 지원하려는 의도; GIN 및 GiST 인덱스의 경우 실제 입력 인수 유형과는 아무런 관련이 없습니다. 기능.

인덱스 기계는 접근 권한을 확인하지 않기 때문에 함수 또는 연산자를 포함하여 함수를 사용하기 전에 함수에 대해 운영자 계열에서는 공개 실행을 허용하는 것과 같습니다. 그것에 대한 허가. 일반적으로 이런 종류의 문제는 아닙니다. 연산자 계열에 유용한 함수입니다.

토토 캔는 SQL 함수로 정의되어서는 안 됩니다. SQL 함수는 호출 쿼리에 인라인될 가능성이 높습니다. 최적화 프로그램이 쿼리를 인식하지 못하게 됩니다. 색인과 일치합니다.

다음 예제 명령은 교차 데이터 유형 연산자를 추가합니다 이미 포함된 연산자 제품군에 대한 지원 기능 데이터 유형에 대한 B-트리 연산자 클래스int4그리고int2.

btree ADD를 사용하는 ALTER OPERATOR FAMILY 정수_ops

  -- int4 대 int2
  연산자 1 < (int4, int2) ,
  연산자 2 <= (int4, int2) ,
  연산자 3 = (int4, int2) ,
  연산자 4 = (int4, int2) ,
  연산자 5  (int4, int2) ,
  기능 1 btint42cmp(int4, int2) ,

  -- int2 대 int4
  연산자 1 < (int2, int4) ,
  연산자 2 <= (int2, int4) ,
  연산자 3 = (int2, int4) ,
  연산자 4 = (int2, int4) ,
  연산자 5  (int2, int4) ,
  함수 1 btint24cmp(int2, int4) ;

이 항목을 다시 제거하려면:

btree DROP을 사용하는 ALTER OPERATOR FAMILY 정수_ops

  -- int4 대 int2
  연산자 1 (int4, int2) ,
  연산자 2 (int4, int2) ,
  연산자 3 (int4, int2) ,
  연산자 4 (int4, int2) ,
  연산자 5 (int4, int2) ,
  함수 1 (int4, int2) ,

  -- int2 대 int4
  연산자 1 (int2, int4) ,
  연산자 2 (int2, int4) ,
  연산자 3 (int2, int4) ,
  연산자 4 (int2, int4) ,
  연산자 5 (int2, int4) ,
  함수 1(int2, int4) ;

호환성

없습니다ALTER OPERATOR 제품군SQL 표준의 문입니다.