我正在嘗試學習Oracle Forms(v6.0)。在一個按鈕按下的觸發器中,我試圖循環遍歷數據塊中的所有記錄。到目前爲止,我下面的代碼:循環遍歷Oracle表格中的所有數據塊記錄
BEGIN
GO_BLOCK('MY_BLOCK');
FIRST_RECORD;
LOOP
MESSAGE(:MY_BLOCK.DSP_NAME);
EXIT WHEN :SYSTEM.LAST_RECORD = 'TRUE';
NEXT_RECORD;
END LOOP;
END;
當我運行的代碼顯示除了最後一個所有DSP_NAME值。如果我添加:
MESSAGE(:MY_BLOCK.DSP_NAME);
循環後,顯示最後一條記錄的DSP_NAME值。爲什麼它是這樣的 - 消息顯示在最後一次記錄檢查之前?什麼是循環記錄的正確方法?
你是絕對正確的,我想每個迭代都會顯示一個消息框並且感到困惑。謝謝! – skujins 2013-02-20 06:36:23