ITPub博客

首页 > 数据库 > Oracle > sqlloader导入含有回车的字符数据

sqlloader导入含有回车的字符数据

原创 Oracle 作者:flzhang 时间:2015-09-28 17:26:41 0 删除 编辑

用Excel上传数据,其中有字段中有回车符
比如如下数据

项军 lj01.xiang "xlj5198
"
项军 l01.iang "xlj5198
"
柳珂 zhike01.liu liuzhikehhp
项军 lj01.xiang "xlj5198
"
利军 lj01.xiang "xlj5198
"
利军 lj01.xiang "xlj5198
"
利军 lj01.xiang "xlj5198
"
项利 lj01.xiang "xlj5118
"
利军 lj01.xiang "xlj51988
" 可以先找出有回车符的字段,去掉回车符,再用sqlloader导入到数据库
找出回车符字段方法,存成txt,在txt里找有””号的数据,这行数据是分两行表示在txt的。然后在excel里用如下三种方法都可以去掉回车符
方法1:查找替换,查找-格式选项里勾选自动换行,替换-格式里勾选自动换行;
方法2:=SUBSTITUTE(单元格引用,CHAR(10),)
方法3:=CLEAN(单元格引用)
最简单的方法是方法3
这里使用方法3把excel先转换成txt文件,
一般步骤
找出含有回车的数据,比如这里找到第三列的数据中很多都有回车,如C1,C10,C20...
在C列旁边新建一列,在该列中直接输入=CLEAN(D1)
拖动D1单元格,使D1中的公式全部应用到当前列
最后把D列中公式表达的数据复制到C列,并覆盖C列数据
删除D列数据
再另存excel的数据到txt文件
这样就可以直接用sqlloader导入txt的数据到数据库了

 sqlload的控制文件脚本

load data
infile 'e:/mydata/20150511/data.txt'

REPLACE
into table schema.UP_0928

fields terminated by X'09' 
TRAILING NULLCOLS
(
 col1
 ,col2
 ,col3

)

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/750077/viewspace-1810996/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 对hint的调优
请登录后发表评论 登录
全部评论

注册时间:2014-03-26

  • 博文量
    97
  • 访问量
    773863