時不時地我們需要匯出一些資料用作備份、查看報表等,如果用Sql Developer匯出會非常慢,而用SqlPlus,則速度非常快,
準備SQL執行檔案export.sql:
set colsep ,
set feedback off
set heading off
set newp none
set pagesize 0
set linesize 200
set trimout on
spool /data/export.csv
select t.name||','||t.age||','||t.salary||','||t.email||','||t.title
from employee t
where t.age < 50
order by t.salary desc;
spool off
exit
說明:
set colsep , #分割符
set feedback off #回顯本次sql命令處理記錄條數
set heading off # 輸出標題
set newp none #設定查詢出來的資料分多少頁顯示,如果需要連續的資料,中間不要出現空行就把newp設定為none
set pagesize 0 # 輸出每頁行數,為了避免分頁設定為0
set linesize 200 # 每行大小,如果設定太小,會分行,最好是超好輸出最大值
set trimout on # 去除標準輸出每行的拖尾空格
set termout off #顯示腳本中的命令的執行結果
set echo on #設定運行命令是否顯示陳述句
set numwidth 12 # 輸出number型別域長度
執行:
sqlplus user/pass@db @export.sql
可以通過SQL指定檔案名:
col datestr new_value filename
select '/data/export.'||to_char(sysdate,'yyyymmdd')||'.csv' datestr from dual;
spool &filename
歡迎訪問南瓜慢說 www.pkslow.com獲取更多精彩文章!
歡迎關注微信公眾號<南瓜慢說>,將持續為你更新...

多讀書,多分享;多寫作,多整理,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/189822.html
標籤:Java
