Welcome 微信登录

首页 / 数据库 / MySQL / Oracle:SQL Loader的导入文本数据

环境:Oracle 10g 10.2有一个文本数据,格式如下:HLR_CODE  HLR_TYPE  REGION_CODE  AREA_CODE  PROV_CODE  BUREAU_CODE  VALID_DATE  EXPIRE_DATE  MODIFY_DATE
1  1302309  1  565  565  551  Z00  2000-1-1  2020-12-31 23:59:59  2008-11-19 20:22:56
2  1302310  1  210  21  210  Z00  2000-1-1  2020-12-31 23:59:59  2008-11-19 20:22:56
3  1302311  1  210  21  210  Z00  2000-1-1  2020-12-31 23:59:59  2008-11-19 20:22:56
4  1302312  1  210  21  210  Z00  2000-1-1  2020-12-31 23:59:59  2008-11-19 20:22:56 需要导入到一张表:create table BS_HLR_INFO

    HLR_CODE        VARCHAR2(8) not null,
    HLR_TYPE        NUMBER(3) not null,
    REGION_CODE VARCHAR2(5) not null,
    AREA_CODE     VARCHAR2(5) not null,
    PROV_CODE     VARCHAR2(7) not null,
    BUREAU_CODE VARCHAR2(5),
    VALID_DATE    DATE not null,
    EXPIRE_DATE DATE not null,
    MODIFY_DATE DATE default sysdate
); 方法是通过sql loader来完成:1、写配置文件OPTIONS (skip=1,rows=128)    
LOAD DATA    
INFILE "hlr_info"
truncate
INTO TABLE BS_HLR_INFO -- 要插入记录的表    
Fields terminated by "  "    
trailing nullcols --表的字段没有对应的值时允许为空    
(    
    virtual_column FILLER, --这是一个虚拟字段,用来跳过由 PL/SQL Developer 生成的第一列序号        
    HLR_CODE,
    HLR_TYPE,
    REGION_CODE,
    AREA_CODE,
    PROV_CODE,
    BUREAU_CODE,
    VALID_DATE DATE "YYYY-MM-DD HH24:MI:SS",
    EXPIRE_DATE DATE "YYYY-MM-DD HH24:MI:SS",
    MODIFY_DATE DATE "YYYY-MM-DD HH24:MI:SS"
) 2、执行导入命令F:sqlloaderdata>dir hlr*
驱动器 F 中的卷是 work
卷的序列号是 647B-14FC

F:sqlloaderdata 的目录

2010-08-27    16:25                             638 hlr_info.ctl
2010-08-24    09:58                18,470,605 hlr_info.dat
2010-08-27    16:27                         2,056 hlr_info.log
                             3 个文件         18,473,299 字节
                             0 个目录 28,318,511,104 可用字节

F:sqlloaderdata>sqlldr cs/cs@hatest control=hlr_info.ctl执行后控制台输出:......达到提交点 - 逻辑记录计数 223296
达到提交点 - 逻辑记录计数 223406
达到提交点 - 逻辑记录计数 223516
达到提交点 - 逻辑记录计数 223626
达到提交点 - 逻辑记录计数 223632
达到提交点 - 逻辑记录计数 223633

F:sqlloaderdata>3、查看日志文件SQL*Loader: Release 10.2.0.1.0 - Production on 星期五 8月 27 16:26:37 2010

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

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

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

表 BS_HLR_INFO,已加载从每个逻辑记录
插入选项对此表 TRUNCATE 生效
TRAILING NULLCOLS 选项生效

     列名                                                位置            长度    中止 包装数据类型
------------------------------ ---------- ----- ---- ---- ---------------------
VIRTUAL_COLUMN                                            FIRST         *    WHT            CHARACTER                        
    (FILLER FIELD)
HLR_CODE                                                         NEXT         *    WHT            CHARACTER                        
HLR_TYPE                                                         NEXT         *    WHT            CHARACTER                        
REGION_CODE                                                    NEXT         *    WHT            CHARACTER                        
AREA_CODE                                                        NEXT         *    WHT            CHARACTER                        
PROV_CODE                                                        NEXT         *    WHT            CHARACTER                        
BUREAU_CODE                                                    NEXT         *    WHT            CHARACTER                        
VALID_DATE                                                     NEXT         *    WHT            DATE YYYY-MM-DD HH24:MI:SS
EXPIRE_DATE                                                    NEXT         *    WHT            DATE YYYY-MM-DD HH24:MI:SS
MODIFY_DATE                                                    NEXT         *    WHT            DATE YYYY-MM-DD HH24:MI:SS

ROWS 参数所用的值已从 128 更改为 110

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


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

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

从 星期五 8月    27 16:26:37 2010 开始运行
在 星期五 8月    27 16:27:05 2010 处运行结束

经过时间为: 00: 00: 28.05
CPU 时间为: 00: 00: 02.61导入成功!Oracle表记录字节长长度的两种计算方式Linux下MySQL Error 1130 不能远程访问相关资讯      oracle 
  • [INS-32052] Oracle基目录和Oracle  (07/22/2014 07:41:41)
  • Oracle 4个大对象(lobs)数据类型  (02/03/2013 12:33:05)
  • Oracle按时间段分组统计  (07/26/2012 10:36:48)
  • [Oracle] dbms_metadata.get_ddl的  (07/12/2013 07:37:30)
  • Liferay Portal 配置使用Oracle和  (07/31/2012 20:07:18)
  • Concurrent Request:Inactive   (07/20/2012 07:44:05)
本文评论 查看全部评论 (0)
表情: 姓名: 字数