更新时间:2024-06-03 GMT+08:00

游标概述

为了处理SQL语句,存储过程进程分配一段内存区域来保存上下文联系。游标是指向上下文区域的句柄或指针。借助游标,存储过程可以控制上下文区域的变化。

  • 当存储过程使用returns返回游标时,如果使用JDBC调用该存储过程,返回的游标将不可用,使用out出参不受影响。
  • 在分布式下,当SQL语句中调用的存储过程参数为refcursor类型或返回值为refcursor类型时,不支持下推。
  • 存储过程内commit/rollback时,显式游标为保证在commit/rollback后仍可用,会缓存游标所有数据,若游标数据量较大,此过程耗时可能较长。

游标的使用分为显式游标和隐式游标。对于不同的SQL语句,游标的使用情况不同,详细信息请参见表1

表1 游标使用情况

SQL语句

游标

非查询语句

隐式的

结果是单行的查询语句

隐式的或显式的

结果是多行的查询语句

显式的