다음 관심 표는입니다.pg_opclass
. 이 테이블은 운영자 클래스를 정의합니다
각 운영자 클래스의 이름 및 입력 데이터 유형
주어진 인덱스 액세스 방법에 의해 지원됩니다. 같은 클래스 이름이 할 수 있습니다
여러 가지 다른 액세스 방법에 사용됩니다 (예 : 둘 다
B-Tree 및 Hash 액세스 방법에는 운영자 클래스가 있습니다.OID_OPS), 그러나 별도pg_opclass각 액세스마다 행이 나타나야합니다
방법. 의 난자pg_opclass
행과 관련하여 다른 테이블에서 외국 키로 사용됩니다.
특정 연산자 및 운영자와의 지원 루틴
수업.
스포츠 토토 베트맨 클래스 이름으로 행을 추가해야합니다 (
예,complex_abs_ops) topg_opclass
:
pg_opclass에 삽입 값 ( (pg_am에서 Oid를 선택하여 Amname = 'btree'), 'complex_abs_ops', (pg_type에서 Oid를 선택하여 typname = 'complex'), 진실, 0); OID 선택, * pg_opclass에서 여기서 opcname = 'complex_abs_ops'; oid | opcamid | opcname | opcintype | opcdefault | opckeytype --------+---------+------------------------------------------------------ 277975 | 403 | complex_abs_ops | 277946 | t | 0 (1 행)
당신의 OID에 주목하십시오pg_opclass
행이 다를 것입니다! 괜찮아요
그래도 이것에 대해. 나중에 시스템 에서이 번호를 얻을 수 있습니다
우리가 여기에 유형의 Oid를 얻은 것처럼.
위의 예는 이것을 새로 만들고 싶다고 가정합니다. 스포츠 토토 베트맨 클래스의 기본 B- 트리 연산자 클래스복잡한데이터 유형. 그렇지 않으면 그냥 설정opcdefault대신 false.opckeyType여기에는 설명되어 있지 않습니다. 그것 B- 트리 스포츠 토토 베트맨 클래스의 경우 항상 0이어야합니다.