我想检查是否没有数据来自SQL查询,那么文件不应该创建。如果没有数据然后不创建空文件
这里是我的代码:
CREATE OR REPLACE PROCEDURE VR_AD_INTEGRATION_EXPORT AS
l_v_file UTL_FILE.file_type
BEGIN
l_v_file := UTL_FILE.fopen('integration', 'HRMtoAD1_'||to_char(sysdate,'YYYYMMDD')||'_'||to_char(sysdate,'HH24MISS'), 'w', 32767);
FOR x IN (SELECT * FROM (SELECT
decode(pid, NULL, RPAD(' ',7,' '), RPAD(user_id, 7, ' '))|| '' ||
decode(name_last, NULL, RPAD(' ',50,' '), RPAD(name_last, 50, ' '))
str FROM vr_ad_integration WHERE integrated = 'N') str WHERE rownum <= 1000 ORDER BY rownum)
LOOP
BEGIN
UTL_FILE.put_line(l_v_file, x.str);
END;
END LOOP;
UTL_FILE.fflush(l_v_file);
UTL_FILE.fclose(l_v_file);
END VR_AD_INTEGRATION_EXPORT;
现在我可以在远程位置成功创建文件。但是,如果选择查询中没有数据呢?不应该创建文件。如果我是正确的,我需要包含异常代码,但在这种情况下我不知道如何去做。任何建议?
干杯! :-)
经过您的脚本的一些变化,我能够使其工作 – Jaanna 2012-07-30 10:26:59
你需要做什么改变?如果我的回答尽可能好,这对未来的求职者会有所帮助。 – APC 2012-07-30 11:30:08