PostgreSQL 中文参考文档
🌐 英文原版 官方 ↗

CLOSE

CLOSE — 关闭一个游标

Synopsis

CLOSE { name | ALL }

描述

CLOSE 释放与一个打开的游标相关联的资源。游标被关闭后,就不允许再对它进行任何后续操作。游标在不再需要时应当被关闭。

当一个事务被 COMMIT 或 ROLLBACK 终止时,每一个非可保持的打开游标都会被隐式关闭。如果创建可保持游标的事务通过 ROLLBACK 中止,该可保持游标会被隐式关闭。如果创建它的事务成功提交,则可保持游标会保持打开状态,直到执行了显式的 CLOSE 或者客户端断开连接。

参数

name

要关闭的打开游标的名称。

ALL

关闭所有打开的游标。

注记

PostgreSQL 没有显式的 OPEN 游标语句;游标在被声明时即被视为打开。请使用 DECLARE 语句来声明游标。

通过查询 pg_cursors 系统视图,可以看到所有可用的游标。

如果在一个保存点之后关闭了游标,而该保存点后来又被回滚,CLOSE 并不会被回滚;也就是说,游标仍保持关闭状态。

示例

关闭游标 liahona:

CLOSE liahona;

兼容性

CLOSE 完全符合 SQL 标准。CLOSE ALL 是一个 PostgreSQL 扩展。

另请参阅

DECLARE, FETCH, MOVE