用一個實例講解DB2數(shù)據(jù)庫游標(biāo)循環(huán)的問題
導(dǎo)讀:DB2數(shù)據(jù)庫游標(biāo)循環(huán)是怎么個情況?下文中我將通過一個實例分析,來為大家講解。
預(yù)計的循環(huán)次數(shù)是yh表行數(shù),由于SELECT IID INTO PINT FROM YH WHERE 0=1;不返回任何行,所以at_end后會立刻等于1(只循環(huán)一次就退出)。
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數(shù)據(jù)庫這種相對來說抽象的技術(shù)具體化,應(yīng)用實例分析使問題更容易理解,希望大家能夠從文中總結(jié)出什么,并應(yīng)用于工作中,希望能夠幫助到大家。
【編輯推薦】
- 全面了解DB2數(shù)據(jù)庫中的各數(shù)據(jù)類型
- IBM DB2數(shù)據(jù)庫中應(yīng)當(dāng)如何更新執(zhí)行計劃
- DB2數(shù)據(jù)庫性能監(jiān)控的具體步驟