我想在处理一些记录时查看程序的输出。阅读该行将无济于事,因为它只是从缓冲区中检索而不是其他任何内容。例如:
DECLARE
CURSOR cEmploee IS SELECT * FROM g_emploees;
iTotal INTEGER := 0;
iCount INTEGER := 0;
BEGIN
SELECT COUNT(*) FROM g_emploees INTO iTotal;
FOR rLine IN cEmploee loop
dbms_output.put_line('Porcessed['||rLine.id||']: '|| ((iCount/iTotal)*100) || '%')
iCount := iCount + 1;
END LOOP;
END;
- 我不能使用 dbms_output.get_line(),所以不要再把它标记为已回答!
- 由于只读原因,我无法将输出通过管道传输到文件!
是否有用于 DBMS 的命令/设置,我可以使用它来查看已处理的 % 并打印在每次迭代中处理的行,而不是在最后作为缓冲区中持续存在的一大堆行(打印的行必须显示每个以及在执行结束时调用“dbms_output.put_line”时PL / SQL中的确切时间不像500行)??