# 宣布

DECLARE — 定义一个游标

# 概要

DECLARE cursor_name [ BINARY ] [ ASENSITIVE | INSENSITIVE ] [ [ NO ] SCROLL ] CURSOR [ { WITH | WITHOUT } HOLD ] FOR prepared_name
DECLARE cursor_name [ BINARY ] [ ASENSITIVE | INSENSITIVE ] [ [ NO ] SCROLL ] CURSOR [ { WITH | WITHOUT } HOLD ] FOR query

# 描述

宣布声明一个游标,用于遍历准备好的语句的结果集。此命令与直接 SQL 命令的语义略有不同宣布:虽然后者执行查询并准备检索结果集,但该嵌入式 SQL 命令仅将名称声明为“循环变量”,用于迭代查询的结果集;实际执行发生在使用打开命令。

# 参数

游标名

游标名称,区分大小写。这可以是 SQL 标识符或主机变量。

准备好的名字

准备好的查询的名称,可以是 SQL 标识符或主机变量。

询问

一种选择或者价值观命令将提供游标返回的行。

有关光标选项的含义,请参见宣布.

# 例子

为查询声明游标的示例:

EXEC SQL DECLARE C CURSOR FOR SELECT * FROM My_Table;
EXEC SQL DECLARE C CURSOR FOR SELECT Item1 FROM T;
EXEC SQL DECLARE cur1 CURSOR FOR SELECT version();

为准备好的语句声明游标的示例:

EXEC SQL PREPARE stmt1 AS SELECT version();
EXEC SQL DECLARE cur1 CURSOR FOR stmt1;

# 兼容性

宣布在 SQL 标准中指定。

# 也可以看看

打开, 关闭, 宣布