oracle sqlldr 实验

tab 分隔处理,空格分隔处理,逗号分隔处理

日期列处理

截断处理

包含双引号处理

列为空处理

1.数据文件data.txt

2012-01-01 10:01:01.001 "1"a"cc"

2012-02-01 10:01:01.002 "2"bc"dd"

2012-03-01 10:01:01.003 "3"cde"ee"

dd

2012-04-01 10:01:01.004 "4"defg"ff"

2012-05-01 10:01:01.005 "5"efgh"gg"

2.控制文件ctl.txt

loaddata

infile 'data.txt'--要导入数据的文件名,也可以是绝对路径

BADFILE 'bad.bad'--指定出错的文件名(出错的记录会输出到这个文件)

DISCARDFILE 'disc.dsc'--指不合条件的记录会输出到这个文件

truncateintotablet_sqlldr--truncate table t_sqlldr后,再导入数据

WHEN(id !='1')AND(col2 !='cc')--指定哪些记录需要导入,如果导入全部记录可省略

fields terminated by' '--数据列以空格分隔

optionally enclosed by'"'--如果数据文件中的各数据列以逗号包围,则可以添加此选项,否则可不添加

(col_date position(1:19) date"yyyy-mm-dd hh24:mi:ss",--指定数据文件中日期/时间格式,并只取前19个字符

field1 filler,                                            --数据文件中的日期不仅只有19个字符,把后面的字符过滤掉

id  ,

col1 ,

col2

)

3.执行sqlldr

F:\sqlldr_test1>sqlldr t_sqlldr/t_sqlldr@oralife control=ctl.txt log=log.txt

SQL*Loader: Release 10.2.0.1.0 - Production on星期六 9月 1 13:10:45 2012

Copyright (c) 1982, 2005, Oracle.  Allrights reserved.

达到提交点 - 逻辑记录计数 5

达到提交点 - 逻辑记录计数 6

4.查看数据,可知我们需要的数据已经加载了

SQL> desct_sqlldr

名称                                      是否为空? 类型

----------------------------------------- -------- ----------------------------

ID                                                 NUMBER(38)

COL1                                               VARCHAR2(10)

COL_DATE                                           DATE

COL2                                               VARCHAR2(5)

SQL> select*fromt_sqlldr;

ID COL1       COL_DATE            COL2

---------- ---------- ------------------- -----

2 bc         2012-02-01 10:01:01 dd

3 cde        2012-03-01 10:01:01 ee

4 defg       2012-04-01 10:01:01 ff

5 efgh       2012-05-01 10:01:01 gg

日志文件的输出log.txt

SQL*Loader: Release 10.2.0.1.0 - Production on 星期六 9月 1 13:10:45 2012

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

控制文件:      ctl.txt

数据文件:      data.txt

错误文件:    bad.bad

废弃文件:    disc.dsc

(可废弃所有记录)

要加载的数: ALL

要跳过的数: 0

允许的错误: 50

绑定数组: 64 行, 最大 256000 字节

继续:    未作指定

所用路径:       常规

表 T_SQLLDR,已加载在ID != 0X31(字符 '1')

和COL2 != 0X6363(字符 'cc')

插入选项对此表 TRUNCATE 生效

列名                        位置      长度  中止 包装数据类型

------------------------------ ---------- ----- ---- ---- ---------------------

COL_DATE                             1:19    19  WHT O (") DATE yyyy-mm-dd hh24:mi:ss

FIELD1                               NEXT     *  WHT O (") CHARACTER

(FILLER FIELD)

ID                                   NEXT     *  WHT O (") CHARACTER

COL1                                 NEXT     *  WHT O (") CHARACTER

COL2                                 NEXT     *  WHT O (") CHARACTER

记录 1: 被废弃 - 所有 WHEN 子句失败。

记录 4: 被拒绝 - 表 T_SQLLDR 的列 FIELD1 出现错误。

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

表 T_SQLLDR:

4 行 加载成功。

由于数据错误, 1 行 没有加载。

由于所有 WHEN 子句失败, 1 行 没有加载。

由于所有字段都为空的, 0 行 没有加载。

为绑定数组分配的空间:                 50944 字节 (64 行)

读取   缓冲区字节数: 1048576

跳过的逻辑记录总数:          0

读取的逻辑记录总数:             6

拒绝的逻辑记录总数:          1

废弃的逻辑记录总数:        1

从 星期六 9月  01 13:10:45 2012 开始运行

在 星期六 9月  01 13:10:45 2012 处运行结束

经过时间为: 00: 00: 00.14

CPU 时间为: 00: 00: 00.10

发生错误的记录会输出到错误文件bad.bad中

dd

不合条件的记录会输出到disc.dsc中 2012-01-01 10:01:01.001 "1" a "cc" 如果数据文件中的数据以tab分隔,使用 terminated by X'09' 或 terminated by whitespace。 如果数据文件都是固定长度的数据,可以使用position(n1:n2)选项。 在执行sqlldr时指定direct=true 以直接路径加载数据。

ORACLE数据加载加本,使用oracle sqlldr加载数据相关推荐

  1. oracle dbms lob,如何使用DBMS_LOB从文件中加载CLOB数据

    BFILE包含二进制数据,所以当通过BFILE方式加载数据到CLOB/NCLOB时,Oracle不进行字符集转化. 如果字符集是可变长的,例如UTF-8或ZHS16GBK,Oracle使用UCS2存储 ...

  2. 【转发】未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项。试图加载格式不正确的程序。...

    http://www.cnblogs.com/joey0210/archive/2012/09/29/2708420.html 上一篇文章说到了DLL引用问题,主要是说的程序中如果使用过了反射,则反射 ...

  3. 未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项。试图加载格式不正确的程序。...

    未能加载文件或程序集"Oracle.DataAccess"或它的某一个依赖项.试图加载格式不正确的程序. 上一篇文章说到了DLL引用问题,主要是说的程序中如果使用过了反射,则反射创 ...

  4. oracle网络加载错误怎么解决,Oracle加载数据库错误解决的方法详细教程

    今天小编给大家分享一篇关于Oracle加载数据库错误解决的方法详细教程,感兴趣的朋友跟小编一起来了解一下吧! 注意:安装时要保证Oracle安装目录不能带有中文字符 (如果第一次安装出现"加 ...

  5. oracle如何往dg加盘_学习笔记:Oracle DG系统 主备库中表空间和数据文件增加删除等管...

    天萃荷净 Oracle Data Guard表空间和数据文件管理汇总 汇总日常工作中操作,在Oracle DG结构系统中,如何删除备库表空间和数据文件,如何管理主库与备库之间的文件系统,详见文章内容. ...

  6. 未能加载文件或程序集“Oracle.DataAccess, Version=2.112.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342...

    若本机的Oracle版本是64位系统,则在调用Oracle数据的时间报以下错误: [未能加载文件或程序集"Oracle.DataAccess, Version=2.112.1.0, Cult ...

  7. oracle自动加一天,如何将Oracle 当前日期加一天、一分钟

    在Oralce中我发现有add_months函数,加天数N可以用如下方法实现,select sysdate+N from dual sysdate+1 加一天 sysdate+1/24 加1小时 sy ...

  8. Pandas将dataframe保存为pickle文件并加载保存后的pickle文件查看dataframe数据实战

    Pandas将dataframe保存为pickle文件并加载保存后的pickle文件查看dataframe数据实战 目录 Pandas将dataframe保存为pickle文件并加载保存后的pickl ...

  9. 使用NHibernate绑定页面数据时,出现未能加载视图状态,正在向其中加载视图状态。。。。的Bug...

    在使用NHibernate为页面数据控件绑定数据时,出现如下提示:"未为能加载视图状态,正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配." 发生以上 ...

  10. activity中fragment 返回键不退出_优雅地处理加载中(loading),重试(retry)和无数据(empty)等...

    LoadSir是一个高效易用,低碳环保,扩展性良好的加载反馈页管理框架,在加载网络或其他数据时候,根据需求切换状态页面,可添加自定义状态页面,如加载中,加载失败,无数据,网络超时,占位图,登录失效等常 ...

最新文章

  1. 某团面试题:JVM 堆内存溢出后,其他线程是否可继续工作?
  2. 服务器租用之服务器带宽情况分析
  3. 海尔推“智能服务”标准 家电产业迎来“互联网+”
  4. 《iPhone与iPad开发实战—iOS经典应用剖析》连载二
  5. c语言报告程序分析报告,2012C语言程序分析报告.doc
  6. 字符串类型的数字比较大小_Python核心知识系列:数字与字符串类型
  7. C语言的指针初始化特别注意一点
  8. 解决SVN提交代码时的错误:“Could not execute PROPPATCH”
  9. LeetCode 382. 链表随机节点(概率)
  10. python中breakpoint什么意思_it/breakpoint是什么意思
  11. 今日看了一下广告收入,心里拔凉拔凉的。
  12. 强化学习(reinforcement learning)教程(后面是翻译)
  13. 网站死链检测的软件-网站死链检测的工具
  14. seaweedfs部署及使用(兼容Hadoop)
  15. 等保2.0四级安全要求
  16. python qq 聊天记录词云制作
  17. 用python做透视表_Python Pandas透视表(pivot_table)详解
  18. vue酒店房间管理系统
  19. 图书馆信息管理系统文档
  20. 快速在线查看字体,编辑字体

热门文章

  1. .NET Core实战项目之CMS 第四章 入门篇-Git的快速入门及实战演练
  2. Docker基础入门及示例
  3. android listview item置顶,ListView的item置顶
  4. Android studio 的快捷键 MAC 和Win版本
  5. React-引领未来的用户界面开发框架-读书笔记(八)
  6. 华为云GaussDB,11.11让企业无后顾之忧
  7. html td显示隐藏,显示/隐藏Html TR/TD
  8. 51单片机智能小车循迹完整程序_电气与信息工程学院双创协会开展循迹小车培训...
  9. 把男朋友变成儿子你只需要一秒
  10. 史上最被低估的两个学科!它们远比你想的更重要!