游标的基本操作流程,一般人不太爱碰,但你要真想搞懂 DB2 的数据提取,游标那是绕不过去的。这个例程写得还挺清楚,从 DECLAREOPENFETCHCLOSE,流程一步一步来,逻辑还蛮顺的,适合初学时照着练。

游标 CURSOR 使用例程的亮点在于:代码结构清爽,注释也刚好,像 OPEN 的时候才真正去查表的机制,多人第一次用的时候都容易忽略。

像下面这样:

EXEC SQL DECLARE K9 CURSOR FOR
  SELECT EMPNO, LASTNAME
  FROM TEMP1
  WHERE DEPNO = :DPT
END-EXEC.
这个 DECLARE 其实只是定义,还没执行,真正开始查数据,是从 OPEN 那步开始的。

再来是 FETCH,一行一行拿数据,适合你要做循环读取的时候用。记得 CLOSE 一下,养成好习惯,资源清理别偷懒。

如果你还想深入看看游标的玩法,可以翻翻这些链接,哦对了,都是干货:

如果你是第一次接触 DB2 的游标操作,建议你先照着例子跑一遍,理解每一段的作用,后面再改成你自己的逻辑也就顺手了。