1. 程式人生 > >oracle匯出指定幾張表的資料以逗號等為分隔符

oracle匯出指定幾張表的資料以逗號等為分隔符

程式碼示例

#!/bin/bash
#====================Usage:      sh exp.sh 264  Or ./exp.sh 264   import data from records in tables which was inserted in 265 to 264 days before sysdate  ===============#

if (($# == 0));then
 echo '===========you need to  input an integer parameter ============='
 exit 1
fi

echo '===========beginning of exporting data from tables==================='
#prev_date prev_date=`date -d "-$1 day" +%Y-%m-%d` end_day=$1 start_day=$(($1+1)) export ORACLE_HOME=/u01/app/11.2.0/db_home1 export LD_LIBRARY_PATH=$ORACLE_HOME/lib #program path prog_path=/home/oracle/lxm/imp_exp #output file base path output_file_base_path=${prog_path}/file #log path output_log_base_path=${prog_path}
/logs #db link string db_srv="ddjk/[email protected]" arr=(t_sagw_callreleasepush_msg t_smb_sub_msg t_smb_unsub_msg t_sagw_cdrpush_msg) for var in ${arr[@]}; do output_file=${output_file_base_path}/${var}/${var}_${prev_date}".txt" output_log=${output_log_base_path}/${var}/${var}
".log" echo $output_file if [ ! -f $output_file ];then touch $output_file fi echo $output_log if [ ! -f $output_log ];then touch $output_log fi sql="select * from ${var} t where t.time<sysdate-${end_day} and t.time>=sysdate-${start_day}" $prog_path/sqluldr2_linux64_10204.bin user=$db_srv query="$sql" file=$output_file field=0x2c record=0x0a log=$output_log charset=ZHS16GBK txt=unl done echo '===========end of exporting data from tables==================='

匯出工具

相關推薦

no