起原:赛迪网 作者:小桥
本文中的存储历程示例,估计的轮回次数是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;
版权声明: 原创作品,允许转载,转载时请务必以超链接要领标明文章 原始来因 、作者信息和本声明。否则将究查执法责任。