历史版本。 PostgreSQL 10 已结束支持。 2022-11-10. 请参阅 当前版本手册.
51.68. pg_cursors #
该 pg_cursors 视图列出当前可用的游标。游标可以通过几种方式定义:
通过 SQL 中的 DECLARE 语句
通过前端/后端协议中的 Bind 消息,如第 52.2.3 节中所述
通过服务器编程接口(SPI),如第 46.1 节中所述
该 pg_cursors 视图会显示通过上述任意方式创建的游标。游标仅在定义它的事务持续期间存在,除非将其声明为 WITH HOLD。因此,不可保持的游标只会在此视图中保留到创建它的事务结束为止。
注意
游标在内部用于实现 PostgreSQL 的某些组件,如过程语言。因此,pg_cursors 视图可能包含用户未显式创建的游标。
表 51.69. pg_cursors 列
| 名称 | 类型 | 描述 |
|---|---|---|
name | text | 游标名 |
statement | text | 用于声明此游标的原始查询字符串 |
is_holdable | boolean | 如果游标是可保持游标(即,在声明该游标的事务提交后仍可访问)则为 true,否则为 false
|
is_binary | boolean | 如果游标被声明为 BINARY,则为 true;否则为 false
|
is_scrollable | boolean | 如果游标是可滚动的(即,允许以一种非顺序的方式检索行)则为 true,否则为 false
|
creation_time | timestamptz | 游标被声明的时间 |
pg_cursors 视图是只读的。