用一个实例讲解DB2数据库游标循环的问题


  本文标签:DB2数据库 游标循环

  导读:DB2数据库游标循环是怎么个情况?下文中我将通过一个实例分析,来为大家讲解  。

  预计的循环次数是yh表行数,由于SELECT IID INTO PINT FROM YH WHERE 0=1;不返回任何行,所以at_end后会立刻等于1(只循环一次就退出)  。

  DECLARE at_end INT DEFAULT 0;
DECLARE PIID INTEGER DEFAULT 0 ;
DECLARE PINT INTEGER DEFAULT 0 ;
DECLARE not_found CONDITION FOR SQLSTATE 02000;
--DECLARE PCOUNT INTEGER;
DECLARE c1 CURSOR FOR
SELECT IID FROM YH;
DECLARE CONTINUE HANDLER FOR not_found
SET at_end = 1;
OPEN c1;
SET PCOUNT=0;
ins_loop:
LOOP
FETCH c1 INTO PIID;
IF at_end <>0 THEN
LEAVE ins_loop;
END IF;
SET PCOUNT=PCOUNT+1;
SELECT IID INTO PINT FROM YH WHERE 0=1;
END LOOP;

  本文是将DB2数据库这种相对来说抽象的技术具体化,应用实例分析使问题更容易理解,希望大家能够从文中总结出什么,并应用于工作中,希望能够帮助到大家  。