pg_cursors #该pg_cursors视图列出当前可用的游标。游标可以通过几种方式定义:
通过SQL中的DECLARE语句
通过前端/后端协议中的Bind消息,如Section 52.2.3中所述
通过服务器编程接口(SPI),如Section 46.1中所述
该pg_cursors视图会显示通过上述任意方式创建的游标。游标仅在定义它的事务持续期间存在,除非将其声明为WITH HOLD。因此,不可保持的游标只会在此视图中保留到创建它的事务结束为止。
游标在内部用于实现PostgreSQL的某些组件,如过程语言。因此,pg_cursors视图可能包含用户未明确创建的游标。
Table 51.69. pg_cursors 列
|
列类型 描述 |
|---|
|
游标名 |
|
用于声明此游标的原始查询字符串 |
|
如果游标是可保持游标(即,在声明该游标的事务提交后仍可访问)则为 |
|
如果游标被声明为 |
|
如果游标是可滚动的(即,允许以一种非顺序的方式检索行)则为 |
|
游标被声明的时间 |
pg_cursors视图是只读的。