↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

百科 / SQL 命令 / 游标与预备语句

SQL COMMAND · 游标与预备语句

CLOSE

关闭一个游标

close a cursor

CLOSE游标与预备语句引入 6.4(基线)现存至 20 devel2 次语法变更

动词
CLOSE
对象
—
引入版本
6.4(基线)
状态
现存
语法变更次数
2
手册小节数
6

本站手册 · 18官方文档 ↗

版本轨迹

相对 PostgreSQL 17 无变化。

语法铁道图 PostgreSQL 18

沿轨道从左向右阅读,分岔表示选择,绕行表示可选,回环表示重复。方框为参数,点击带下划线的参数可展开子规则。

CLOSE name ALL

语法概要

CLOSE { name | ALL }

PostgreSQL 18 手册 · 查看完整参考页

描述

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

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

参数

name

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

ALL

关闭所有打开的游标。

注解

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

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

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

示例

关闭游标 liahona:

CLOSE liahona;

兼容性

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

另见

语法演化

相邻大版本之间的差异,新的在前。版本号链接到对应快照。

  1. PostgreSQL 8.4← 8.3正文更新

    正文更新
  2. PostgreSQL 8.3← 8.2语法变化

    + CLOSE { name | ALL }正文更新
  3. PostgreSQL 8.2← 8.1正文更新

    正文更新
  4. PostgreSQL 8.0← 7.4正文更新

    正文更新
  5. PostgreSQL 7.4← 7.3语法变化

    + CLOSE name− CLOSE cursor正文更新
  6. PostgreSQL 7.2← 7.1正文更新

    正文更新
  7. PostgreSQL 7.1← 7.0文件改名

    sql-close.htm → sql-close.html

同组命令

命令动词对象版本变动最近变更
CURSORS & PREPARED STATEMENTS游标与预备语句7 条↑
CLOSECLOSE— 8.32 次
关闭一个游标现存
DEALLOCATEDEALLOCATE— 8.32 次
释放一个预备语句现存
DECLAREDECLARE— 144 次
定义一个游标现存
EXECUTEEXECUTE— 8.21 次
执行一个预备语句现存
FETCHFETCH— 106 次
使用游标从查询中检索行现存
MOVEMOVE— 106 次
定位游标现存
PREPAREPREPARE— 9.03 次
预备一个语句以供执行现存