FORM中的數據塊循環與游標循環的區別
大家在用FORM做開發的時候,難免會碰到這樣的問題,一個數據塊中有多條紀錄,你需要判斷每一條紀錄的某個字段是否為空,這個時候你就要用到循環!
這個時候就有兩種方法供你選擇,一種是數據塊循環,一種就是游標循環!樊某不才,把兩種判斷方法的代碼發出來,供大家參考一下!
一.數據塊循環:
GO_BLOCK('BLOCK_NAME');
FIRST_RECORD;
LOOP
IF NVL(:BLOCK_NAME.ITEM_NAME,' ')=' ' THEN
....................................
END IF;
IF :SYSTEM.LAST_RECORD='TRUE' THEN
EXIT;
END IF;
NEXT_RECORD;
END LOOP;
二.游標循環
FOR C1 IN (SELECT COLUMN_NAME FROM TABLE_NAME WHERE ........) LOOP
IF NVL(C1.COLUMN_NMAE,' ')=' ' THEN
...............
END IF;
END LOOP;
兩種方法的區別是:數據塊循環的話,在前臺界面COMMIT與不COMMIT,效果都是一樣的;但是用游標的話,就需要COMMIT,不然游標循環就沒有數據!游標循環抓取的是數據庫后臺的資料!
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10768286/viewspace-237997/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10768286/viewspace-237997/