ORACLE sql load 数据导入笔记

 

 

 

1、首先,将源数据库的一张表导出为txt文件,以“|”分隔。

 

set head off

set pages 999

set echo off

set feed off

set lines 150

set termout off;

spool  c:/DW_V_USER_CHARGE_SECOND_M_GW.txt  append ;

select * from zhangtao20110120;

spool off;

set termout on;

exit; 

 

2、编写格式化导入文件 mondetailgu|jf_mondet_gu.ctl

 

 

load data 

infile *       

Append into   table   dcust_jf_mondetail_gu

(ACCT_MONTH         terminated by '|', 

ID_NO              terminated by '|', 

GW_TOTAL_FEE       terminated by '|', 

GW_LOCAL_FEE       terminated by '|', 

GW_GN_LONG_FEE     terminated by '|', 

GW_QUJIAN_FEE      terminated by '|', 

GW_GJ_LONG_FEE     terminated by '|', 

GW_GAT_FEE         terminated by '|', 

GW_RENT_FEE        terminated by '|', 

GW_INFO_FEE        terminated by '|', 

GW_WAIBU_FEE       terminated by '|', 

GW_QITA_FEE        terminated by '|', 

GW_DALING_FEE      terminated by '|', 

GW_WWW_FEE         terminated by '|', 

GW_WWW_QITA_FEE    terminated by '|', 

GW_YINYE_FEE       terminated by '|', 

GW_FAV_FEE         terminated by '|', 

GW_OTHER_FEE       terminated by '|')

 

 

3、导入时的shell:mondetailgu|jf_mondet_gu_in.sh

 

 

get_date()

{

sqlplus dbcrmadm/dbcrmadm@crmdb << EOF

select to_char(add_months(sysdate,$1),'yyyymm'),'xxxx' from dual;

exit

EOF

}

 

get_date "-1" | grep xxxx | read dealyymm nouse

echo "${dealyymm}"

 

sqlldr dbcrmadm/密码@SID data=/wxjfjk/WEIXI/MONTH/${dealyymm}/DW_V_USER_CHARGE_SECOND_M_GW.txt  control=/wxjfjk/WEIXISHELL/mondetailgu/jf_mondet_gu.ctl  log=/wxjfjk/WEIXISHELL/mondetailgu/jf_mondet_gu_in.log

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值