【SQL*Loader】SQL*Loader实验之(4)--数据文件中没有分隔符,而是固定长度字符串...


【实验内容】
将实验(1)中的数据文件和控制文件稍作修改,要加载的数据文件中没有分隔符,而是固定长度字符串的情况。


【实验过程】

//(1)看一下数据导入前dept2中表的数据状况。
C:\>sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 6月 15 06:53:12 2011

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

SQL> conn scott@test
输入口令:
已连接。
SQL> set feedback on
SQL> set linesize 3000
SQL> set pagesize 3000
SQL> select * from dept2;

    DEPTNO DNAME          LOC
---------- -------------- -------------
        12 ACCOUNTING     NEW YORK
        22 RESEARCH       DALLAS
        32 SALES,LVA      CHICAGO
        42 OPERATIONS     BOSTON
        10 ACCOUNTING     NEW YORK
        20 RESEARCH       DALLAS
        30 SALES          CHICAGO
        40 OPERATIONS     BOSTON
        11 ACCOUNTING     NEW YORK
        21 RESEARCH       DALLAS
        31 SALES          CHICAGO
        41 OPERATIONS     BOSTON

已选择12行。

SQL>


//(2)做成dept2_ShiYan04_01.dat数据文件。
内容如下:
----------------------------------------
13 ACCOUNTING NEW YORK
23 RESEARCH   DALLAS
33 SALES      CHICAGO
43 OPERATIONS BOSTON
----------------------------------------

//(3)做成sqlloder导入用控制文件dept2_ShiYan04_01.ctl
内容如下:
----------------------------------------
LOAD DATA
INFILE 'dept2_ShiYan04_01.dat'
BADFILE 'dept2_ShiYan04_01.bad'
INTO TABLE dept2
APPEND
( DEPTNO position(1:2), --读取从第1位到第2位字符
  DNAME position(4:13), --读取从第4位到第13位字符 (数据文件中第3位的空格数据不要)
  LOC position(15:22)   --读取从第15位到第22位字符(数据文件中第14位的空格数据不要)
)
----------------------------------------

//(4)启动并执行sqlloader。

sqlldr scott/tiger control="dept2_ShiYan04_01.ctl"  log="dept2_ShiYan04_01.log"

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

D:\Oracle学习\test\sqlloader\实验3>cd D:\Oracle学习\test\sqlloader\实验4

D:\Oracle学习\test\sqlloader\实验4>sqlldr scott/tiger control="dept2_ShiYan04_01.ctl"  log="dept2_ShiYan04_01.log"

SQL*Loader: Release 10.2.0.1.0 - Production on 星期三 6月 15 07:03:47 2011

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

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

D:\Oracle学习\test\sqlloader\实验4>
--------------------

产生的Log文件
--------------------

SQL*Loader: Release 10.2.0.1.0 - Production on 星期三 6月 15 07:03:47 2011

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

控制文件:      dept2_ShiYan04_01.ctl
数据文件:      dept2_ShiYan04_01.dat
  错误文件:    dept2_ShiYan04_01.bad
  废弃文件:    未作指定
 
(可废弃所有记录)

要加载的数: ALL
要跳过的数: 0
允许的错误: 50
绑定数组: 64 行, 最大 256000 字节
继续:    未作指定
所用路径:       常规

表 DEPT2,已加载从每个逻辑记录
插入选项对此表 APPEND 生效

   列名                        位置      长度  中止 包装数据类型
------------------------------ ---------- ----- ---- ---- ---------------------
DEPTNO                                1:2     2           CHARACTER           
DNAME                                4:13    10           CHARACTER           
LOC                                 15:22     8           CHARACTER           


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


为绑定数组分配的空间:                  1664 字节 (64 行)
读取   缓冲区字节数: 1048576

跳过的逻辑记录总数:          0
读取的逻辑记录总数:             4
拒绝的逻辑记录总数:          0
废弃的逻辑记录总数:        0

从 星期三 6月  15 07:03:47 2011 开始运行
在 星期三 6月  15 07:03:47 2011 处运行结束

经过时间为: 00: 00: 00.33
CPU 时间为: 00: 00: 00.23
--------------------

执行后 dept2中的数据状况。
--------------------
SQL> select * from dept2;

    DEPTNO DNAME          LOC
---------- -------------- -------------
        13 ACCOUNTING     NEW YORK
        23 RESEARCH       DALLAS
        33 SALES          CHICAGO
        43 OPERATIONS     BOSTON
        12 ACCOUNTING     NEW YORK
        22 RESEARCH       DALLAS
        32 SALES,LVA      CHICAGO
        42 OPERATIONS     BOSTON
        10 ACCOUNTING     NEW YORK
        20 RESEARCH       DALLAS
        30 SALES          CHICAGO
        40 OPERATIONS     BOSTON
        11 ACCOUNTING     NEW YORK
        21 RESEARCH       DALLAS
        31 SALES          CHICAGO
        41 OPERATIONS     BOSTON

已选择16行。

SQL>
--------------------
以上。

 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/20335819/viewspace-697950/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/20335819/viewspace-697950/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值