我正在尝试学习 Oracle 表单(v6.0)。在按下按钮时的触发器中,我试图遍历数据块中的所有记录。到目前为止,我有以下代码:
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 值。为什么会这样 - 在最后一次记录检查之前显示消息?什么是循环记录的正确方法?