更新日期:2024年09月11日
GBase 8a MPP Cluster 中的游标是一种只读、仅向前的游标。游标中包含的
数据是不能在使用时被更改的,并且游标中的数据只能按照从头至尾的顺序
来读取;
GBase 8a MPP Cluster 中的游标需要配合处理器(handler)来使用,游标需
要在处理器的声明语句之前被声明,而且任何游标内使用的变量都需要在游
标的声明语句之前被定义;
在使用游标处理数据时,
通常会使用LOOP、
REPEAT 或者WHILE 结构,
并
在这些结构的执行体中使用FETCH 语句来遍历游标中的数据;
在GBase 8a MPP Cluster 中,
同一个存储过程中可声明多个游标,
但有以下
限制:
1. 多个游标不能相互交叉,最好是使用完一个再使用另外一个;
2. 如果使用了LOOP、REPEAT 或者WHILE 结构来遍历游标取得数据并进
行处理,同时如果在这些循环结构的结构体中调用了存储过程,则被调
用的存储过程中不应该再包含游标和用于遍历游标的LOOP、
REPEAT 或
者WHILE 结构,否则可能会出现一些不可预期的结果。