歡迎您光臨本站 註冊首頁

Oracle SQLPlus匯出資料到csv檔案的方法

←手機掃碼閱讀     ml5rwbikls @ 2020-06-07 , reply:0

時不時地我們需要匯出一些資料用作備份、檢視報表等,如果用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

 

ps:下面看一個例子透過sqlplus匯出資料到csv
 
例子

  [oracle@localhost ~]$ cat data.sql  set echo off  set feedback off  set linesize 100  set pagesize 0  set sqlprompt ''  set trimspool on  spool data.csv  select id || ',' || val from testtab;  spool off  exit  [oracle@localhost ~]$

[ml5rwbikls ] Oracle SQLPlus匯出資料到csv檔案的方法已經有831次圍觀

http://coctec.com/docs/program/show-post-237372.html