50.5. pg_amproc
В каталоге pg_amproc хранится информация об опорных процедурах, связанных с семействами операторов методов доступа. Строки в нём описывают все опорные процедуры, принадлежащие семейству операторов.
Таблица 50.5. Столбцы pg_amproc
| Имя | Тип | Ссылки | Описание |
|---|---|---|---|
oid | oid | Идентификатор строки (скрытый атрибут; должен выбираться явно) | |
amprocfamily | oid | | Семейство операторов, к которому относится эта запись |
amproclefttype | oid | | Тип данных левого операнда связанного оператора |
amprocrighttype | oid | | Тип данных правого операнда связанного оператора |
amprocnum | int2 | Номер опорной процедуры | |
amproc | regproc | | OID процедуры |
Обычно принято, что amproclefttype и amprocrighttype определяют типы левого и правого операнда оператора(ов), которые поддерживает конкретная опорная процедура. Для некоторых методов доступа они соответствуют типам входных данных самой опорной процедуры, для других — нет. Есть понятие «стандартных» опорных процедур для индекса; это такие процедуры, у которых amproclefttype и amprocrighttype равняются opcintype класса оператора индекса.
50.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 50.5. pg_amproc Columns
| Name | Type | References | Description |
|---|---|---|---|
oid | oid | Row identifier (hidden attribute; must be explicitly selected) | |
amprocfamily | oid | | The operator family this entry is for |
amproclefttype | oid | | Left-hand input data type of associated operator |
amprocrighttype | oid | | Right-hand input data type of associated operator |
amprocnum | int2 | Support procedure number | |
amproc | regproc | | OID 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.