`
jinyanliang
  • 浏览: 307983 次
  • 性别: Icon_minigender_1
  • 来自: 河南开封
社区版块
存档分类
最新评论

sqlldr导入Sequence等类型数据

阅读更多
sqlldr导入Sequence等类型数据

目标表SQL:
create table STM_TERMINAL_INFO
(
    terminal_id     NUMBER(12) not null,
    terminal_ip     VARCHAR2(200) not null,
    storey                VARCHAR2(50) not null,
    region_id         VARCHAR2(50) not null,
    ccs_id                VARCHAR2(50) not null,
    seat_code         VARCHAR2(50) not null,
    seat_desc         VARCHAR2(200),
    terminal_type VARCHAR2(50) not null,
    manage_code     VARCHAR2(1024),
    manage_tel        VARCHAR2(1024),
    fault_cause     VARCHAR2(1024),
    state                 NUMBER(1) not null,
    create_date     DATE not null,
    create_code     VARCHAR2(20) not null,
    op_code             VARCHAR2(20) not null,
    op_id                 NUMBER(12) not null,
    org_id                NUMBER(12) not null,
    org_name            VARCHAR2(200) not null,
    done_code         VARCHAR2(30) not null,
    done_date         DATE not null,
    notes                 VARCHAR2(1024),
    is_fault            NUMBER(1)
);

create sequence STM_TERMINAL_INFO$SEQ
minvalue 1
maxvalue 999999999999
start with 1181
increment by 1
cache 20;

要导入的数据:
        IP_ADDRESS  A.CENTER_CODE||A.FLOOR_CODE  CITY_CODE  CENTER_CODE  SEAT_CODE  'TESTLEI'  '1'  'M000000'  '13939012107'  '故障原因'  1  TO_CHAR(SYSDATE,'YYYY-MM-DDHH  'M000000'  'M000000'  0  911  '雷智民'  0  TO_CHAR(SYSDATE,'YYYY-MM-DDHH  'LEIZHIMIN'  F
1  10.97.106.11  STM_000003_A_211  STM_000003_A  STM_000003_A_2  99511  testlei  1  M000000  13939012107  故障原因  1  2011-01-05 16:24:04  M000000  M000000  0  911  雷智民  0  2011-01-05 16:24:04  leizhimin  0
2  10.97.106.12  STM_000003_A_211  STM_000003_A  STM_000003_A_2  99512  testlei  1  M000000  13939012107  故障原因  1  2011-01-05 16:24:04  M000000  M000000  0  911  雷智民  0  2011-01-05 16:24:04  leizhimin  0
3  10.97.106.13  STM_000003_A_211  STM_000003_A  STM_000003_A_2  99513  testlei  1  M000000  13939012107  故障原因  1  2011-01-05 16:24:04  M000000  M000000  0  911  雷智民  0  2011-01-05 16:24:04  leizhimin  0
4  10.97.106.14  STM_000003_A_211  STM_000003_A  STM_000003_A_2  99514  testlei  1  M000000  13939012107  故障原因  1  2011-01-05 16:24:04  M000000  M000000  0  911  雷智民  0  2011-01-05 16:24:04  leizhimin  0
5  10.97.106.15  STM_000003_A_211  STM_000003_A  STM_000003_A_2  99515  testlei  1  M000000  13939012107  故障原因  1  2011-01-05 16:24:04  M000000  M000000  0  911  雷智民  0  2011-01-05 16:24:04  leizhimin  0

导入配置文件:
OPTIONS (skip=1,rows=128)        
LOAD DATA           
INFILE "STM_TERMINAL_INFO.data"   
append   
INTO TABLE STM_TERMINAL_INFO -- 要插入记录的表           
Fields terminated by "  "        
trailing nullcols --表的字段没有对应的值时允许为空           
(           
  virtual_column FILLER, --这是一个虚拟字段,用来跳过由 PL/SQL Developer 生成的第一列序号                
  TERMINAL_IP,
  STOREY,
  REGION_ID,
  CCS_ID,
  SEAT_CODE,
  SEAT_DESC,
  TERMINAL_TYPE,
  MANAGE_CODE,
  MANAGE_TEL,
  FAULT_CAUSE,
  STATE,
  CREATE_DATE DATE "YYYY-MM-DD HH24:MI:SS",
  CREATE_CODE,
  OP_CODE,
  OP_ID,
  ORG_ID,
  ORG_NAME,
  DONE_CODE,
  DONE_DATE DATE "YYYY-MM-DD HH24:MI:SS",
  NOTES,
  IS_FAULT,
  TERMINAL_ID "Stm_Terminal_Info$seq.Nextval"
)

导入操作:
E:\loaddata>dir
驱动器 E 中的卷没有标签。
卷的序列号是 1470-E67B

E:\loaddata 的目录

2011-01-05    16:45        <DIR>                    .
2011-01-05    16:45        <DIR>                    ..
2011-01-05    16:32                             705 ldrcfg.cfg
2011-01-05    16:45                         3,173 ldrcfg.log
2011-01-05    16:27                         1,193 STM_TERMINAL_INFO.data
                             3 个文件                    5,071 字节
                             2 个目录        672,718,848 可用字节


E:\loaddata>sqlldr csm/csm_123@hatest control=ldrcfg.cfg

SQL*Loader: Release 10.2.0.1.0 - Production on 星期三 1月 5 16:45:17 2011

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

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

E:\loaddata>

日志文件:

SQL*Loader: Release 10.2.0.1.0 - Production on 星期三 1月 5 16:32:29 2011

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

控制文件:            ldrcfg.cfg
数据文件:            STM_TERMINAL_INFO.data
    错误文件:        STM_TERMINAL_INFO.bad
    废弃文件:        未作指定
   
(可废弃所有记录)

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

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

     列名                                                位置            长度    中止 包装数据类型
------------------------------ ---------- ----- ---- ---- ---------------------
VIRTUAL_COLUMN                                            FIRST         *    WHT            CHARACTER                        
    (FILLER FIELD)
TERMINAL_IP                                                    NEXT         *    WHT            CHARACTER                        
STOREY                                                             NEXT         *    WHT            CHARACTER                        
REGION_ID                                                        NEXT         *    WHT            CHARACTER                        
CCS_ID                                                             NEXT         *    WHT            CHARACTER                        
SEAT_CODE                                                        NEXT         *    WHT            CHARACTER                        
SEAT_DESC                                                        NEXT         *    WHT            CHARACTER                        
TERMINAL_TYPE                                                NEXT         *    WHT            CHARACTER                        
MANAGE_CODE                                                    NEXT         *    WHT            CHARACTER                        
MANAGE_TEL                                                     NEXT         *    WHT            CHARACTER                        
FAULT_CAUSE                                                    NEXT         *    WHT            CHARACTER                        
STATE                                                                NEXT         *    WHT            CHARACTER                        
CREATE_DATE                                                    NEXT         *    WHT            DATE YYYY-MM-DD HH24:MI:SS
CREATE_CODE                                                    NEXT         *    WHT            CHARACTER                        
OP_CODE                                                            NEXT         *    WHT            CHARACTER                        
OP_ID                                                                NEXT         *    WHT            CHARACTER                        
ORG_ID                                                             NEXT         *    WHT            CHARACTER                        
ORG_NAME                                                         NEXT         *    WHT            CHARACTER                        
DONE_CODE                                                        NEXT         *    WHT            CHARACTER                        
DONE_DATE                                                        NEXT         *    WHT            DATE YYYY-MM-DD HH24:MI:SS
NOTES                                                                NEXT         *    WHT            CHARACTER                        
IS_FAULT                                                         NEXT         *    WHT            CHARACTER                        
TERMINAL_ID                                                    NEXT         *    WHT            CHARACTER                        
        列的 SQL 串: "Stm_Terminal_Info$seq.Nextval"

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

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


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

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

从 星期三 1月    05 16:32:29 2011 开始运行
在 星期三 1月    05 16:32:29 2011 处运行结束

经过时间为: 00: 00: 00.29
CPU 时间为: 00: 00: 00.04


注意,Sequence要放到最后一个位置。
分享到:
评论

相关推荐

    sqlldr导入带有自动增加的数据

    它支持多种数据源格式,如文本文件、Excel文件等,并能够处理各种数据类型。SQL*Loader可以自动转换数据格式,检测并处理错误,以及在加载过程中执行复杂的逻辑操作。 ### 自动增加字段的处理 在创建数据库表时,...

    利用 sqluldr2导出数据 使用sqlldr导入数据 通过merge into 合并更新数据

    2. SQL*Loader导入数据: SQL*Loader是Oracle用于将数据从外部文件加载到数据库的工具。它的使用流程与SQLULDR2类似,但方向相反: - 创建控制文件,定义要导入的表结构、字段映射等。 - 运行SQL*Loader命令,...

    windowns下利用bat命令+oracle的sqlldr功能导入数据

    4. **运行批处理**:双击批处理文件或通过命令行执行,启动SQL*Loader并导入数据。 5. **查看结果**:导入完成后,通过日志文件和错误文件检查导入状态,了解成功记录数、失败记录及原因。 **四、优化技巧** 1. *...

    利用sqlldr大量数据导入

    3. 索引和约束:在导入数据前,考虑暂时禁用索引和约束,导入完成后重新启用,以提高效率。 总之,SQL*Loader是Oracle数据库进行大量数据导入的强大工具,通过合理配置和使用,可以有效提高数据导入效率,减少系统...

    sqlldr导入csv文档

    它支持多种数据格式,包括CSV、文本、二进制等,并提供了高度灵活的数据转换和映射选项。在企业环境中,SQL*Loader常被用于数据迁移、数据导入和日常的数据维护任务。 #### 使用案例解析:导入CSV至Oracle表 在...

    MySQL导出数据并通过sqlldr导入oracle

    同时代码还会生成sqlldr命令需要用到的control文件和bat文件,以及连接Oracle的配置文件,只要将MySQL导出的数据文件合到一起,执行bat文件,即可完成数据导入到Oracle的任务。所有文件都是以导入导出的那张表的表名...

    oracle sqlldr多文件批量导入

    - **错误处理**:设置SQL*Loader的错误日志和限制,以便处理导入过程中遇到的问题,如坏记录、数据类型不匹配等。 - **性能优化**:使用绑定变量、直方图加载、大块读取等技术提升加载速度。 - **事务管理**:根据...

    sqlldr导入数据

    本篇文章将深入探讨sqlldr的使用方法以及如何通过它来批量导入数据。 首先,我们要理解sqlldr的基本结构。它通过控制文件(如`gl_point.ctl`)来定义数据导入的规则,包括字段映射、数据格式、错误处理等。例如,`...

    spool导出与sqlldr导入

    3. 运行sqlldr命令导入数据,如: ```bash sqlldr user/pass@database CONTROL=InputLost.ctl LOG=import_log.log ``` 这里,`user/pass@database`是数据库连接信息,`CONTROL`指定了控制文件,`LOG`用于记录...

    sqlldr报超出字符长度错误

    当使用SQL*Loader导入数据时遇到超出字符长度限制的错误,可以通过调整目标表列的长度、修改控制文件中的定义、优化控制文件以及检查源文件等多种方式来解决。在处理此类问题时,确保对SQL*Loader的工作原理有充分的...

    Oracle sqlldr 大批量数据导入工具

    Oracle sqlldr 大批量数据导入工具使用实例,通过Oracle 自带的sqlldr 工具可快速导入大批量的数据至Oracle中。 工具使用前提条件: 1.安装的Oracle Client 不能为精简版,要不然就找不到sqlldr.exe 2.将Oracle的...

    oracle sqlldr 导入乱码问题

    6. 数据库会话设置:在导入数据前,确保数据库会话的字符集设置正确,可以通过以下SQL语句临时改变会话字符集: ``` ALTER SESSION SET NLS_CHARACTERSET = 'AL32UTF8'; ``` 三、总结 解决SQL*Loader导入乱码...

    sqlldr通过excel上传数据

    SQL*Loader(简称sqlldr)是Oracle数据库提供的一款强大的数据加载工具,用于高效地将大量数据从外部文件导入到数据库表中。在这个场景下,我们关注的是如何利用sqlldr将Excel数据快速批量地导入到Oracle数据库。...

    Oracle sqlldr导入一个日期列实例详解

    Oracle SQL*Loader(sqlldr)是Oracle数据库提供的一种强大的数据加载工具,用于将大量数据从文本文件快速导入到数据库表中。在这个实例中,我们将详细探讨如何使用SQL*Loader导入包含日期列的数据。 首先,我们...

    C#数据批量高效导入Oracle源码(利用SqlLdr )

    VS2013 C#.Net开发 C#利用SqlLdr 数据批量导入Oracle程序源码,高效可达万行/秒。 1.可多表同时执行 2.可视导入信息反馈,可查看错误数据及导入日志。 3.内含 批处理 执行方法 及 导入 ldr Demo文件。 4.内含导数据...

    sqlldr自动生成控制文件导入到表

    使用`ora_load.sh`脚本来自动化导出源数据库中的表数据,然后在目标数据库上创建相同的表结构,接着通过FTP传输数据文件到目标数据库,并执行`batch_load_data.sh`脚本来导入数据。导出数据时,利用`spool`功能将...

    关于 Oracle 的数据导入导出及 Sql Loader (sqlldr)

    - **impdp**:用于导入数据,可以从DMP文件中恢复数据到数据库中。 2. **Sql Loader (sqlldr)** Sql Loader是一种命令行工具,通过读取控制文件(.ctl文件,如提供的`ldr_object.ctl`)来确定如何解析输入数据...

    OraLoader--用sqlldr的Oracle库表数据装载工具

    3. **支持多种数据格式**:OraLoader不仅支持常见的CSV、TXT等文本格式,还支持Excel、XML、JSON等多种数据格式,满足不同场景下的数据导入需求。 4. **性能优化**:OraLoader利用了sqlldr的底层性能优势,能够在...

    sqlldr导入流程图.vsd

    用于手工将数据导入SQL SERVER数据库中,暂时支持2008和2012,2016没有试过,可以很快速的导入数据入库。欢迎大家下载

Global site tag (gtag.js) - Google Analytics