pg_opclass

PostgreSQL 8.0.0 文書
前のページ | 巻戻し | 第 41章システムカタログ | 早送り | 次のページ

# 41.22. `pg_opclass`

`pg_opclass` カタログはインデックスアクセスメソッド演算子クラスを定義します。それぞれの演算子クラスは特定のデータ型のインデックス列のセマンティクスと特定のインデックスアクセスメソッドを定義します。複数の振る舞いをサポートするため、対象となるデータ型/アクセスメソッドの組み合わせについて複数の演算子クラスが存在する場合があることに注意してください。

演算子クラスについては 項31.14 に詳細に説明されています。

表 41-22. `pg_opclass` の列

名前 | 型 | 参照先 | 説明
--- | --- | --- | ---
`opcamid` | `oid` | ``pg_am`.oid` | 演算子クラスで使用するインデックスアクセスメソッド
`opcname` | `name` |  | この演算子クラスの名前
`opcnamespace` | `oid` | ``pg_namespace`.oid` | この演算子クラスの名前空間
`opcowner` | `int4` | ``pg_shadow`.usesysid` | 演算子クラスの所有者
`opcintype` | `oid` | ``pg_type`.oid` | 演算子クラスがインデックスを作成するデータ型
`opcdefault` | `bool` |  | opclass が演算子クラスのデフォルトである場合は真
`opckeytype` | `oid` | ``pg_type`.oid` | インデックス内に格納されているデータの型。もしくは`opcintype`と同じ場合はゼロ

演算子クラスを定義する情報の多くは実際には `pg_opclass` 行には無く、関連する `pg_amop` および `pg_amproc` の行にあります。これらの行は演算子クラスの定義の一部と見なされます。つまりこの方法は、リレーションが単一の `pg_class` 行に加えて `pg_attribute` や他のテーブルの関連する行で定義されるのと変わりありません。

前のページ | ホーム | 次のページ
`pg_namespace` | 上に戻る | `pg_operator`