Документация по PostgreSQL 9.4.1 | |||
---|---|---|---|
Пред. | Уровень выше | Глава 48. Системные каталоги | След. |
48.57. pg_cursors
В представлении pg_cursors перечисляются курсоры, доступные в данный момент. Курсоры могут быть созданы несколькими способами:
через оператор DECLARE в SQL
через сообщение Bind в клиент-серверном протоколе, как описано в Подразделе 49.2.3
через интерфейс программирования сервера (SPI, Server Programming Interface), как описано в Разделе 44.1
В представлении pg_cursors показываются курсоры, полученные любым способом. Курсор существует только на протяжении транзакции, в которой он определён, если только он не был объявлен с указанием WITH HOLD. Поэтому не удерживаемые курсоры показываются в этом представлении только пока не завершится создавшая их транзакция.
Замечание: Курсоры используются внутри системы для реализации некоторых компонентов PostgreSQL, таких как процедурные языки. Таким образом, в представлении pg_cursors могут быть курсоры, которые пользователи не создавали явно.
Таблица 48-58. Колонки pg_cursors
Имя | Тип | Описание |
---|---|---|
name | text | Имя курсора |
statement | text | Дословная строка запроса, создавшего данный курсор |
is_holdable | boolean | True, если курсор удерживаемый (то есть, к нему можно обращаться после того, как будет зафиксирована транзакция, в которой он объявлен); в противном случае — false |
is_binary | boolean | True, если курсор был объявлен с указанием BINARY; в противном случае — false |
is_scrollable | boolean | True, если курсор прокручиваемый (то есть, позволяет получать строки непоследовательным образом); в противном случае — false |
creation_time | timestamptz | Время, в которое был объявлен курсор |
Представление pg_cursors доступно только для чтения.
Пред. | Начало | След. |
pg_available_extension_versions | Уровень выше | pg_group |