当前位置:网站首页 > 技术博客 > 正文

sqlldr怎么使用



      

控制文件中指定插入数据的方式关键字

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

l         append,在表中追加新记录

l         replace,删除旧记录,替换成新装载的记录

l         truncate,同上

position(m:n)表示该字段是从位置m到位置n。

  三、此时我们执行加载:
                D:>sqlldr userid=fancy/testpass control=result.ctl log=resulthis.out
                SQL*Loader: Release 8.1.6.0.0 - Production on 星期二 1月 8 10:25:42 2002
                (c) Copyright 1999 Oracle Corporation.   All rights reserved.
                SQL*Loader-941:   在描述表RESULTXT时出现错误
                ORA-04043: 对象 RESULTXT 不存在
          提示出错,因为数据库没有对应的表。
  四、在数据库建立表
             create table resultxt
               (resultid varchar2(500),
                website varchar2(500),
                ipport varchar2(500),
                status varchar2(500))

  五、重新执行加载
          D:>sqlldr userid=fancy/k1i7l6l8 control=result.ctl log=resulthis.out
               SQL*Loader: Release 8.1.6.0.0 - Production on 星期二 1月 8 10:31:57 2002
               (c) Copyright 1999 Oracle Corporation.   All rights reserved.
               达到提交点,逻辑记录计数2
               达到提交点,逻辑记录计数3
         已经成功!我们可以通过日志文件来分析其过程:resulthis.out内容如下:
               SQL*Loader: Release 8.1.6.0.0 - Production on 星期二 1月 8 10:31:57 2002
               (c) Copyright 1999 Oracle Corporation.   All rights reserved.
               控制文件: result.ctl
               数据文件: result.csv
               错误文件: result.bad
               废弃文件: 未作指定(可废弃所有记录)
               装载数: ALL
               跳过数: 0
               允许的错误: 50
               绑定数组: 64 行,最大 65536 字节
               继续:     未作指定
               所用路径:        常规
               表RESULTXT
              已载入从每个逻辑记录
              插入选项对此表INSERT生效
    列名                         位置       长度   中止 包装数据类型
------------------------------ ---------- ----- ---- ---- ---------------------
RESULTID                             FIRST      *     ,       CHARACTER            
WEBSITE                               NEXT      *     ,       CHARACTER            
IPPORT                                NEXT      *     ,       CHARACTER            
STATUS                                NEXT      *   WHT       CHARACTER            

表RESULTXT:
3 行载入成功
由于数据错误, 0 行没有载入。
由于所有 WHEN 子句失败, 0 行没有载入。
由于所有字段都为空的, 0 行没有载入。

为结合数组分配的空间:     65016字节(63行)
除绑定数组外的内存空间分配:          0字节
跳过的逻辑记录总数:         0
读取的逻辑记录总数:         3
拒绝的逻辑记录总数:         0
废弃的逻辑记录总数:         0
从星期二 1月   08 10:31:57 2002开始运行
在星期二 1月   08 10:32:00 2002处运行结束
经过时间为: 00: 00: 02.70
CPU 时间为: 00: 00: 00.10(可
  六、并发操作
  sqlldr userid=/ control=result1.ctl direct=true parallel=true
        sqlldr userid=/ control=result2.ctl direct=true parallel=true
        sqlldr userid=/ control=result3.ctl direct=true parallel=true
        当加载大量数据时(大约超过10GB),最好抑制日志的产生:
  SQL>ALTER TABLE RESULTXT nologging;
     这样不产生REDOLOG,可以提高效率。然后在CONTROL文件中load data上面加一行:unrecoverable
     此选项必须要与DIRECT共同应用。
 在并发操作时,ORACLE声称可以达到每小时处理100GB数据的能力!其实,估计能到1-10G就算不错了,开始可用结构相同的文件,但只有少量数据,成功后开始加载大量数据,这样可以避免时间的浪费。

  • 上一篇: python3简介
  • 下一篇: java内存模型原理
  • 版权声明


    相关文章:

  • python3简介2025-03-15 08:00:59
  • js原型链的应用场景2025-03-15 08:00:59
  • 拷贝构造函数的定义2025-03-15 08:00:59
  • c语言数据类型详解2025-03-15 08:00:59
  • adb工具包使用方法2025-03-15 08:00:59
  • java内存模型原理2025-03-15 08:00:59
  • 迈迪三维设计工具官网2025-03-15 08:00:59
  • fs.createwritestream2025-03-15 08:00:59
  • 计算机系统的组成共包括哪几部分2025-03-15 08:00:59
  • 用python开发的运维管理系统2025-03-15 08:00:59