1. SQL*LOADER是ORACLE的数据加载工具,通常用来将操作系统文件迁移到ORACLE数据库中。

2. 在NT下,SQL*LOADER的命令为SQLLDR,在UNIX下一般为sqlldr/sqlload(在/oracle/product/10.2.0/bin目录下可以看到存在sqlldr)。

3. 用法:  sqlldr   关键字  =   值  [,keyword=value,...]

4. 当加载大量数据时,可以抑制日志的产生:

a)     ALTER  TABLE  RESULTXT  nologging;

5. 控制文件.ctl

load  data   --1、控制文件标识

infile  'test.txt'      --2、要输入的数据文件名为test.txt

append  into  table   test--3、向表test中追加记录

fields  terminated  by   '|+|'  TRAILINGNULLCOLS--4、字段终止于空行

(TP_CUSTOMER_ID ,

ECIF_NO ,

TP_SYSTEM_SOURCE_CD)  -----定义列对应顺序

其中append为数据装载方式,还有其他选项:

a、insert,为缺省方式,在数据装载开始时要求表为空

b、append,在表中追加新记录

c、replace,删除旧记录(全部的记录),替换成新装载的记录

d、truncate,同上先删除再新增

6. 范例:

a)     Unix + Oracle环境。

b)    在某目录下准备好test.ctl和test.dat文件。

c)     运行命令: sqlldr userid=orcl/orcle@10.1.1.11:1521/orcl control=test.ctl data=test.datlog=test.log bad=test.bad;

7. sqlldr用到的主要参数

1)   userid -- ORACLEusername/password

2)   control – 控制文件

3)   log – 记录的日志文件

4)   bad – 坏数据文件,记录错误的未加载数据

5)   data – 数据文件,* data参数只能指定一个数据文件,如果控制文件也通过infile指定了数据文件,并且指定多个,则sqlldr在执行时,先加载data参数指定的数据文件,控制文件中第一个infile指定的数据文件被忽略,但后续的infile指定的数据文件继续有效

6)   discard – 丢弃的数据文件

7)   discardmax – 允许丢弃数据的最大值       (默认全部)

8)   skip -- 跳过记录数,从数据文件中,从第一行开始要计算要跳过的行数  (默认0)

9)   load -- Number of logical records toload  (默认全部)

10) errors –允许的错误记录数,超过则终止任务(默认50)

11) rows -- Number of rows inconventional path bind array or between direct path datasaves(每次提交的记录数,默认: 常规路径 64, 直接路径 全部,所以使用直接路径的话,效率会比普通的好太多太多)

12) bindsize -- Size of conventional pathbind array in bytes(每次提交记录的缓冲区的大小,字节为单位,默认256000)

13) silent --禁止输出信息(header,feedback,errors,discards,partitions)

14) direct – 使用直通路径方式导入 (默认FALSE)

如果表中有索引的话,是不能指定direct=TRUE的,除非使用skip_index_maintenance=TRUE,这个就是在导入的时候忽略索引,所以在数据导入完毕以后,查看索引的状态应该都是无效的,需要重建之,如下SQL:select  * fromdba_indexes where table_name='?' ;

alter  idnexindex_name rebuild ;

重新建立索引要比新建索引快。

15) parallel -- 并行导入 (默认FALSE,注意:parallel并不是让一个sqlldr语句起多个进程来加载数据,而是不锁住加载表,允许别的直接路径加载. 所以要使parallel起作用,应该先将要加载的数据文件分成多个,用多个sqlldr语句同时加载,如下例:
  sqlldruserid=scott/tiger control=load1.ctl data=data1.txt direct=yparallel=true & sqlldr userid=scott/tigercontrol=load2.ctl data=data2.txt direct=y parallel=true& sqlldr userid=scott/tiger control=load3.ctldata=data3.txt direct=y parallel=true &)

16) skip_unusable_indexes --disallow/allow unusable indexes or indexpartitions(默认FALSE)

17) skip_index_maintenance -- do notmaintain indexes, mark affected indexes asunusable(默认FALSE)

oracle sqlldr 总结相关推荐

  1. ORACLE数据加载加本,使用oracle sqlldr加载数据

    oracle sqlldr 实验 tab 分隔处理,空格分隔处理,逗号分隔处理 日期列处理 截断处理 包含双引号处理 列为空处理 1.数据文件data.txt 2012-01-01 10:01:01. ...

  2. oracle sqlload 704,Oracle Sqlldr optionally enclosed by

    Oracle Sqlldr optionally enclosed by(GCH) In all, when you edit the control file,you would rather ad ...

  3. oracle sqlldr 数据导入错误Field in data file exceeds maximum length解决

    使用oracle sqlldr进行数据导入时报Field in data file exceeds maximum length错误的解决办法: 一种是数据字段确实比数据库中的字段要长,这中错误需要调 ...

  4. oracle sqlldr 数据导入时报错:Field in data file exceeds maximum length

    使用oracle sqlldr进行数据导入时报Field in data file exceeds maximum length错误: 在ctl文件中设置的数据长度小于实际数据长度 如: column ...

  5. oracle sqlldr 数据导入时报错:Field in data file exceeds maximum length完美解决

    使用oracle sqlldr进行数据导入时报Field in data file exceeds maximum length错误的解决办法: 一种是数据字段确实比数据库中的字段要长,这中错误需要调 ...

  6. oracle数据库sqlloader,sql loader ---ORACLE SQLLDR

    sql loader的基本使用: 1. sql loader里有几个概念: 控制文件:和数据库的文件不是一回事,个人理解是用于数据加载控制的. 数据文件:要加载入库的数据文件,支持文本,csv, 等格 ...

  7. oracle sqlldr (一) 最基本语法

    -- Create table create table DEPT2 (DEPTNO NUMBER(2) not null,DNAME VARCHAR2(14),LOC VARCHAR2(1000) ...

  8. Oracle sqlldr

    一.sqlldr的概述 sqlldr是oracle自带的一个工具,用于导入文本文件的内容到oracle数据库中. 该工具在:\oracle\app\oracle\product\11.2.0\serv ...

  9. oracle sqlldr详解,sqlldr详解

    Oracle 的SQL*LOADER可以将外部数据加载到数据库表中.下面是SQL*LOADER的基本特点: 1)能装入不同数据类型文件及多个数据文件的数据 2)可装入固定格式,自由定界以及可度长格式的 ...

  10. Oracle sqlldr导入之“MAXIMUM ERROR COUNT EXCEEDED”

    昨天看到一个同事在通过PL/SQL Developer工具把文本数据往oracle表;有两个文本:一个有30万条记录:一个7万多条记录. 在导入到过程中:出现错误记录还需要点击确认.不过使用黑科技(屏 ...

最新文章

  1. 【poj3420】 Quad Tiling
  2. 11.python并发入门(part4 死锁与递归锁)
  3. OpenGL ES 3.0之Texturing纹理详解(二)
  4. “星斗奖”九大类奖项揭晓:好未来、四川航空,瑞幸咖啡杨飞、中青旅张晓磊等入选...
  5. 13个Pandas实用技巧,有点香 !
  6. crawler_JVM_DNS_在爬虫中的应用
  7. ICCV 2019 | 视频综合理解:行为识别、场景识别以及视频综述
  8. CALayer 4 详解 -----转自李明杰
  9. MQ中将消息发送至远程队列的配置
  10. (二)SSO之CAS框架单点退出,自己定义退出界面.
  11. 什么是最适合云数据库的架构设计?
  12. EDUCoder编程练习题解(递归与嵌套函数)
  13. Android kotlin中配置protobuf
  14. Linux多线程同步之相互排斥量和条件变量
  15. 我毕业一年后。生活的艰辛。我的程序人生该怎么走
  16. 一个完整的数据挖掘项目-纽约市建筑能源之星预测
  17. 详解pytorch fold和unfold用法
  18. 专业技术计算机应用能力考试ppt2007,全国专业技术人员计算机应用能力考试PPT题库.pdf...
  19. Python玫瑰花绘制
  20. 一分钟解决你的公有云私有云选择困难症

热门文章

  1. WeTest重磅推出云测试专有云解决方案,助力企业打造全球精品应用
  2. 统计学中I和II类错误
  3. 钢铁力量服务器维护,钢铁力量入门攻略 Iron force新手技巧
  4. 线程面试题之五:放水果问题
  5. 王八、狼、老鼠、狐狸和猪的故事
  6. linux挂载概念简述:
  7. Antd select dropdown 样式修改
  8. Rockchip RK3588如何创建新一个新板级DTS
  9. 【C语言】冒泡排序详解
  10. stray'\273'解决办法