今天接到的需求是定期要把資料庫的資料格式化後,匯出成txt檔,並上傳到指定FTP。
1.製作讓批次檔呼叫的sql檔
[spool.sql]
set newpage none --換頁空幾行
set space 0 --欄位間空幾個space
set colsep '|' --分隔符號,需搭配space <> 0時使用
set heading off --是否顯示欄位表頭
set pagesize 30 --一頁行數,設定0時是沒有分頁
set trimspool on --刪除行尾空白
set linesize 2000 --每行長度(超過自動斷行)
set feedback off --是否回寫總筆數
set termout off --是否將執行的command顯示在畫面上
spool C:\test.txt --指定匯出檔名路徑
select 'test' from dual;
spool off
exit
2.製作file.bat批次檔
連線到sqlplus並執行上述sql,接著上傳ftp
[file.bat]
sqlplus ID/PassWord@DB @spool.sql
ftp 位址
id
pw
put 檔名
exit
3.排程file.bat檔,以後就可以自動執行。
沒有留言:
張貼留言