【发布时间】:2019-12-03 23:17:26
【问题描述】:
我需要您的帮助来创建循环,该循环将遍历行并从每一行创建 txt 文件参数。 使用我当前的代码,我无法再进一步记录,因为它太快了(至少我认为这是原因)。我想在每行之间添加两秒钟的暂停,但我不确定该怎么做。 感谢您的帮助!
PROCEDURE CREATE_TXT_FILE IS
out_file TEXT_IO.FILE_TYPE;
tmp_file varchar2(100);
out_str varchar2(100);
tmp_str varchar2(100);
data_str varchar2(100);
BEGIN
go_block('Block1');
FIRST_RECORD;
LOOP
TMP_FILE := 'C:\txt_files;' ------directory
TMP_FILE := TMP_FILE || 'test'; ------document name
begin
out_file := TEXT_IO.FOPEN(tmp_file, 'W');
exception
WHEN OTHERS THEN
bell;
message('Can''t open file to write.' || tmp_file,acknowledge);
raise form_trigger_failure;
END;
--parameters for text file
data_str := :block1.column1 ||:block1.column2||:block1.column3||:block1.column4||;
out_str := out_str || data_str;
begin
TEXT_IO.PUT_LINE(out_file, out_str);
exception when others then
message('Error to write string to output file. Export is aborted',acknowledge);
raise form_trigger_failure;
end;
TEXT_IO.fclose(out_file);
message('Done', no_acknowledge);
synchronize;
EXIT WHEN :SYSTEM.LAST_RECORD = 'TRUE';
NEXT_RECORD;
END LOOP;
END;
【问题讨论】:
-
是什么让你觉得它很快?在写入文件之前,我从未见过这是一个问题。提供您遇到的错误以及是否实际创建第一条记录的文件等详细信息会更有用。
标签: oracle plsql plsqldeveloper oracleforms