快速业务通道

Oracle数据库备份与恢复(2):SQL*Loader

作者 凌众技术 来源 互联网 浏览 发布时间 2012-01-15
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 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号