使用spool從Oracle導出大批量數據


使用shell腳本spool,可以直接調用SQL語句,也可以調用SQL文件,如下代碼直接調用SQL語句。

inas1@nasapp1:[/***/debug/script/expNasDB]cat exp1.sh
#!/usr/bin/ksh

echo `date`'執行開始'

path=`pwd`
TODAY=`date +%Y%m%d`
OPEN_FILE="1_"$TODAY".txt"
TMP_OPEN_FILE="1_"$TODAY".tmp"

cd $path
sqlplus userDB/userPWD@tns <<!
set echo off;
set feedback off;
set heading off;
set pagesize 0;
set linesize 6000;
set termout off;
set trimout on;
set trimspool on;
SPOOL $TMP_OPEN_FILE;
#@$OPNE_SQL;
select a.accnbr||','||a.imsi||','||a.switchid from TMP_FRESH_VOLTEYUMAI598W_1_150 a where a.accnbr is not null and a.imsi is not null and a.switchid is not null;
SPOOL OFF;
quit
!

sed '1d' "$TMP_OPEN_FILE" | sed '$d' >"$OPEN_FILE"; rm "$TMP_OPEN_FILE"

echo `date`'執行結束'
inas1@nasapp1:[/***/debug/script/expNasDB]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM