48.5. pg_amproc

В каталоге pg_amproc хранится информация об опорных процедурах, связанных с семействами операторов методов доступа. Строки в нём описывают все опорные процедуры, принадлежащие семейству операторов.

Таблица 48-5. Колонки pg_amproc

ИмяТипСсылкиОписание
oidoid Идентификатор строки (скрытый атрибут; должен выбираться явно)
amprocfamilyoidpg_opfamily.oidСемейство операторов, к которому относится эта запись
amproclefttypeoidpg_type.oidТип данных левого операнда связанного оператора
amprocrighttypeoidpg_type.oidТип данных правого операнда связанного оператора
amprocnumint2 Номер опорной процедуры
amprocregprocpg_proc.oidOID процедуры

Обычно принято, что amproclefttype и amprocrighttype определяют типы левого и правого операнда оператора(ов), которые поддерживает конкретная опорная процедура. Для некоторых методов доступа они соответствуют типам входных данных самой опорной процедуры, для других — нет. Есть понятие "стандартных" опорных процедур для индекса; это такие процедуры, у которых amproclefttype и amprocrighttype равняются opcintype класса оператора индекса.

48.5. pg_amproc

The catalog pg_amproc stores information about support procedures associated with access method operator families. There is one row for each support procedure belonging to an operator family.

Table 48-5. pg_amproc Columns

NameTypeReferencesDescription
oidoid Row identifier (hidden attribute; must be explicitly selected)
amprocfamilyoidpg_opfamily.oidThe operator family this entry is for
amproclefttypeoidpg_type.oidLeft-hand input data type of associated operator
amprocrighttypeoidpg_type.oidRight-hand input data type of associated operator
amprocnumint2 Support procedure number
amprocregprocpg_proc.oidOID of the procedure

The usual interpretation of the amproclefttype and amprocrighttype fields is that they identify the left and right input types of the operator(s) that a particular support procedure supports. For some access methods these match the input data type(s) of the support procedure itself, for others not. There is a notion of "default" support procedures for an index, which are those with amproclefttype and amprocrighttype both equal to the index operator class's opcintype.

FAQ