41.22. pg_opclass

pg_opclass 定義索引訪問方法操作符資料表。 每個操作符資料表為一種特定資料類型和一種特定索引訪問方法定義索引字串的語義。 請注意對於一種指定的資料類型/訪問方法組合,可能會有多種操作符資料表,這樣就可以支援多種行為。

操作符資料表在 Section 31.14 裡有比較詳細的描述。

Table 41-22. pg_opclass 字串

名字類型參考描述
opcamidoidpg_am.oid操作符資料表所服務的索引訪問方法
opcnamename 這個操作符資料表的名字
opcnamespaceoidpg_namespace.oid這個操作符資料表的名字空間
opcownerint4pg_shadow.usesysid操作符資料表所有人
opcintypeoidpg_type.oid操作符資料表的輸入資料類型
opcdefaultbool 如果操作符資料表是opcintype(見前一個字串)的預設,則為真
opckeytypeoidpg_type.oid索引資料的類型,如果和opcintype相同則為零

定義一個操作符資料表的大部分訊息實際上並不在它的 pg_opclass 行裡,而是在相關的 pg_amoppg_amproc 行裡。我們認為這些行是定義操作符資料表的一部分 — 這和用一行 pg_class 加上在 pg_attribute 和其他資料表中的行定義一個關係(資料表)沒啥不同。