SPOOL是SQLPLUS的命令,必須在SQLPLUS中使用,主要完成以標準輸出方式輸出SQLPLUS的命令及執(zhí)行結(jié)果,一般常用戶格式化導(dǎo)出ORACLE表數(shù)據(jù)。
對于SPOOL數(shù)據(jù)的SQL,最好要自己定義格式,以方便程序直接導(dǎo)入,SQL語句如:
select taskindex||'|'||commonindex||'|'||tasktype||'|'||to_number(to_char(sysdate,'YYYYMMDD')) from sys_user;
spool常用的設(shè)置
set colsep' '; //域輸出分隔符
set echo off; //顯示start啟動的腳本中的每個sql命令,缺省為on
set feedback off; //回顯本次sql命令處理的記錄條數(shù),缺省為on
set heading off; //輸出域標題,缺省為on
set pagesize 0; //輸出每頁行數(shù),缺省為24,為了避免分頁,可設(shè)定為0。
set termout off; //顯示腳本中的命令的執(zhí)行結(jié)果,缺省為on
set trimout on; //去除標準輸出每行的拖尾空格,缺省為off
set trimspool on; //去除重定向(spool)輸出每行的拖尾空格,缺省為off
sqlplus -s username/password@sid
set trimspool on;
set linesize 120;
set pagesize 2000;
set newpage 1;
set heading off;
set term off;
spool sys_user.txt;
select col1||','||col2||','||col3||','||col4||'..' from sys_user;
spool off;
exit;
