码迷,mamicode.com
首页 > 数据库 > 详细

ORACLE SQLLDR导入

时间:2015-06-27 09:37:24      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:

最近由于需要造很多相似的数据,所以研究了一下Sqlloader这个工具。

  这个工具对于大量的数据插入有很大帮助。

具体用法:

  常使用的关键字:

  userid   --   ORACLE   username/password  
  control   --   Control   file   name  
  log   --   Log   file   name  
  bad   --   Bad   file   name  
  data   --   Data   file   name  
  skip   --   Number   of   logical   records   to   skip   (默认0)  
  load   --   Number   of   logical   records   to   load   (全部默认)  
  errors   --   Number   of   errors   to   allow   (默认50)  

  使用方法:

    技术分享

生成控制文件control = result.ctl

  控制文件中存储的是表的结构。如下:

    

load   data
infile   TEST.CSV   
into   table   TEST APPEND
(
PNAME   CHAR   terminated   by   ,,
AGE   CHAR   terminated   by   ,,
ADDR   CHAR   terminated   by   ,,
PID   CHAR   terminated   by   ,,
PHONE   CHAR terminated   by   WHITESPACE
)

 

  其中,infile表示数据存储的文件,这里是以逗号分隔符的文件,into table表示要插入的表,APPEND 表示以追加方式插入,其他方式还有:insert--->默认方式,但是前提是表必须是空的,replace--->删除旧数据,插入新的,truncate---->先清空表,再插入。

 

    一般错误:

      如:在逻辑记录结束之前未找到列(使用 TRAILING NULLCOLS)

      表示你的控制文件中的列数,和数据文件中的列数不匹配,而且还没有指定TRAILING NULLCOLS参数,导致部分列无法插入,这种情况首先要检查控制文件和数据文件,然后再考虑是否需要添加TRAILING NULLCOLS参数。(加在控制文件中)

ORACLE SQLLDR导入

标签:

原文地址:http://www.cnblogs.com/IDECIDETODOIT/p/4603593.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!