DECLARE — 定义一个游标
DECLAREcursor_name[ BINARY ] [ ASENSITIVE | INSENSITIVE ] [ [ NO ] SCROLL ] CURSOR [ { WITH | WITHOUT } HOLD ] FORprepared_nameDECLAREcursor_name[ BINARY ] [ ASENSITIVE | INSENSITIVE ] [ [ NO ] SCROLL ] CURSOR [ { WITH | WITHOUT } HOLD ] FORquery
DECLARE 为准备语句的结果集迭代声明一个游标。此命令的语义与直接的 SQL 命令 DECLARE 略有不同:后者执行一个查询并将结果集准备好以便检索,而此嵌入式 SQL 命令仅将一个名称声明为一个用于迭代查询结果集的“循环变量”,实际执行发生在使用 OPEN 命令打开游标时。
为查询声明游标的示例
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;
DECLARE 是 SQL 标准中指定的。