更新时间:2024-11-27 GMT+08:00

MOVE

功能描述

MOVE在不检索数据的情况下重新定位一个游标。MOVE的作用类似于FETCH命令,但只是重定位游标而不返回行。

注意事项

无。

语法格式

1
MOVE [ direction [ FROM | IN ] ] cursor_name;

其中direction子句为可选参数。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
NEXT
   | PRIOR
   | FIRST
   | LAST
   | ABSOLUTE count
   | RELATIVE count
   | count
   | ALL
   | FORWARD
   | FORWARD count
   | FORWARD ALL
   | BACKWARD
   | BACKWARD count
   | BACKWARD ALL

参数说明

MOVE命令的参数与FETCH的相同,详细请参见FETCH的参数说明

成功完成时,MOVE命令将返回一个“MOVE count”的标签,count是一个使用相同参数的FETCH命令会返回的行数(可能为零)。

示例

创建表reason,并向表中插入数据:

1
2
3
4
5
6
7
8
9
DROP TABLE IF EXISTS reason;
CREATE TABLE reason
(
  a    int primary key,
  b    int,
  c    int
);

INSERT INTO reason VALUES (1, 2, 3);

开始一个事务:

1
START TRANSACTION;

定义一个名为cursor1的游标:

1
CURSOR cursor1 FOR SELECT * FROM reason;

忽略游标cursor1的前3行:

1
MOVE FORWARD 3 FROM cursor1;

抓取游标cursor1的前4行:

1
FETCH 4 FROM cursor1;

关闭游标:

1
CLOSE cursor1;

结束一个事务:

1
END;

相关链接

CLOSEFETCH