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

sqlldr学习日记

时间:2015-11-25 11:44:51      阅读:425      评论:0      收藏:0      [点我收藏+]

标签:

sqlldr作为oracle自带的数据导入工具,在对规则数据导入能提供较好的功能;

功能使用:

windows平台下,命令:
sqlldr userid=user/password@SID control=loader.ctl log=loade.log bad=loader.bad

其中log为日志文件,bad为错误数据文件,可以不显示注明,默认会生成在当前目录下,同样control文件路径不注明则也会在命令所在目录下生成文件。

关键在于书写控制文件内容;格式如下:

OPTIONS  -- sqlldr 命令显示的选项可以写到控制文件中,skip=1 用来跳过数据中的第一行,rows=128表示128行提交一次,默认为64;

rows —— 加载的行数,默认值:常规路劲:64,直接路径:全部。常规路径导入时,指定绑定数组中的行数。直接路径导入时,指一次从数据文件只读取的行数。该参数同 时受bindsize制约,如果rows每行实际占用大小超出bindsize的最大可用值,则rows自动降低到bindsize最大可用值。

 

OPTIONS (skip=1,rows=128)
load data            
infile  ‘E:\ldr\ldr.csv‘
append into table lp_ldr
fields terminated by ","
Optionally enclosed by ‘"‘
(OWNER,
  OBJECT_NAME,
  SUBOBJECT_NAME,
  OBJECT_ID      INTEGER EXTERNAL,
  DATA_OBJECT_ID INTEGER EXTERNAL,
  OBJECT_TYPE,
  CREATED        DATE "YYYY-MM-DD HH24:MI:SS",
  LAST_DDL_TIME  DATE "YYYY-MM-DD HH24:MI:SS",
  TIMESTAMP,
  STATUS,
  TEMPORARY,
  GENERATED,
  SECONDARY,
  NAMESPACE,
  EDITION_NAME
)

 

在列中定义数据类型时大概的意思是不识别,感觉很奇怪怎么识别不了number类型,查了下文档原来sqlldr有自己的数据类型,例如整数类型是INTEGER EXTERNAL,字符类型是CHAR
常见的数据类型:
CHAR  字符类型可以描述数据中的VARCHAR2 或 CHAR 列
DATE   日期类型可以描述数据库的DATE列
INTEGER EXTERNAL 整数类型
FLOAT EXTERNAL 浮点类型
DECIMAL EXTERNAL 小数

sqlldr学习日记

标签:

原文地址:http://www.cnblogs.com/leipeng/p/4992357.html

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