没有数据时删除空假脱机文件
Deleting empty spool file when no data
我有一个 sql 脚本可以创建假脱机文件。
当我没有数据时,我正在创建一个空文件。我不希望在这种情况下创建文件。
我该怎么做?
set termout off;
set newpage 0;
set space 0;
set linesize 255;
set pagesize 0;
set echo off;
set feedback off;
set heading off;
set verify off;
set trimspool on;
UNDEFINE p_xml_filename
DEFINE p_xml_filename=&1
spool &p_xml_filename
SELECT * FROM emp;
spool off;
set feedback on
set verify on
set heading on
set echo on
exit
与其在SQL*Plus处理,我宁愿在OS级别处理 .在您的场景中,您只想在数据存在时假脱机处理文件。但是,为此,您需要检查 table 中的 COUNT 行,因此这是流程的开销。
或者,我会:
- 让假脱机永远发生
- 对假脱机文件执行 grep 以检查内容
- 如果找不到内容,请删除 文件。
rm filename
我有一个 sql 脚本可以创建假脱机文件。
当我没有数据时,我正在创建一个空文件。我不希望在这种情况下创建文件。
我该怎么做?
set termout off;
set newpage 0;
set space 0;
set linesize 255;
set pagesize 0;
set echo off;
set feedback off;
set heading off;
set verify off;
set trimspool on;
UNDEFINE p_xml_filename
DEFINE p_xml_filename=&1
spool &p_xml_filename
SELECT * FROM emp;
spool off;
set feedback on
set verify on
set heading on
set echo on
exit
与其在SQL*Plus处理,我宁愿在OS级别处理 .在您的场景中,您只想在数据存在时假脱机处理文件。但是,为此,您需要检查 table 中的 COUNT 行,因此这是流程的开销。
或者,我会:
- 让假脱机永远发生
- 对假脱机文件执行 grep 以检查内容
- 如果找不到内容,请删除 文件。
rm filename