Oracle数据库备份与恢复(2):SQL*Loader
p; " >>/tmp/$1.col
echo "set feedback off " >>/tmp/$1.col echo "set tab off " >>/tmp/$1.col echo "select column_name||',' from user_tab_columns where lower(table_name)='$1' order by column_id; " >> /tmp/$1.col ##产生 select 语句 echo "set heading off " >/tmp/$1.sel echo "set pagesize 0" >>/tmp/$1.sel echo "set linesize 800 " >>/tmp/$1.sel echo "set feedback off " >>/tmp/$1.sel echo "set tab off " >>/tmp/$1.sel echo "select " >>/tmp/$1.sel echo `sqlplus -s $2/$3 < /tmp/$1.col` |sed "s/,/||'|'||/g" |sed "s/||$//g"|sed "s/date/\"date\"/g" >>/tmp/$1.sel ##生成 dat文件 #echo "from $1;\n/" >>/tmp/$1.sel 由于 / 导致多执行一次 select echo "from $1;\n" >>/tmp/$1.sel sqlplus -s $2/$3 < /tmp/$1.sel >$1_tmp.dat #awk '{if(FNR!=1) print $0}' $1_tmp.dat >$1.dat FNR 选项使得第一条记录选不出 awk '{print $0}' $1_tmp.dat >$1.dat rm -f $1_tmp.dat 2、将数据导入到相应表中 #!/bin/ksh ################################################################## ## 名称:loadtable ## 功能:本 shell 用于将已经准备好的。dat数据文件导入相应的表中 ## .dat 文件各个字段值用分隔符'|'分开。 ##&nb |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |