MOVE
MOVE¶
定位游标。
- 语法
-
``` sql MOVE [ forward_direction [ FROM | IN ] ] cursor_name
其中`forward_direction`可以为空或以下之一: ``` sql NEXT FIRST LAST ABSOLUTE count RELATIVE count count ALL FORWARD FORWARD count FORWARD ALL
- 描述
-
MOVE
会重新定位游标,而不会检索任何数据。MOVE
的工作方式与FETCH
命令完全相同,只不过它仅定位光标而不返回行。请注意,由于不支持可滚动光标,因此无法在SeaboxMPP数据库中向后移动光标位置。 只能使用
MOVE
向前移动光标。成功完成后,
MOVE
命令将返回以下形式的命令标签:MOVE count
count是具有相同参数的
FETCH
命令将返回的行数(可能为零)。 - 参数
-
该SQL命令参数说明见下
forward_direction
MOVE
命令的参数与FETCH
命令的参数相同。 有关语法和用法的详细信息,请参阅FETCH
。cursor_name
- 打开的游标的名称。
- 示例
-
开始事务:
BEGIN;
设置游标:
DECLARE mycursor CURSOR FOR SELECT * FROM films;
在游标
mycursor
中向前移动5行:MOVE FORWARD 5 IN mycursor; MOVE 5
之后获取下一行(第6行):
FETCH 1 FROM mycursor; code | title | did | date_prod | kind | len -------+--------+-----+------------+--------+------- P_303 | 48 Hrs | 103 | 1982-10-22 | Action | 01:37 (1 row)
关闭游标并结束事务:
CLOSE mycursor; COMMIT;
- 兼容性说明
- SQL标准中没有
MOVE
语句。 - 相关SQL命令
DECLARE
,FETCH
,CLOSE