zoukankan      html  css  js  c++  java
  • oracle之数据同步:Oracle Sql Loader使用说明(大批量快速插入数据库记录)

    1.准备表数据

    select * from emp10;
    
    create sequence seq_eseq
    increment by 1
    start with 1001
    maxvalue 999999999;
    
    --得到序列的SQL语句
    select seq_eseq.nextval from sys.dual;
    
    --删除序列的SQL
    DROP SEQUENCE seq_eseq;
    
    create table emp10(
    empno number(4) primary key,
    ename varchar2(20) not null,
    job varchar(20) not null,
    mgr number(4),
    hiredate date,
    sal number(5,2),
    comm number(5,2),
    deptno number(2),
    constraint dept_emp10_fk foreign key(deptno) references dept(deptno)
    )
    insert into emp10(empno,ename,job,mgr,hiredate,sal,comm,deptno)
    values(seq_eseq.nextval,'lili','IT',980,to_date('1988-05-11','yyyy-mm-dd'),500,100,10);
    
    select count(*) from emp10;

     导出csv文件

    导出后将csv文件中的双引号"全部去掉。

    2.ctl文件参数说明:

    LOAD DATA
    INFILE emps.csv --csv文件名
    append --操作类型,用 append 在表中追加新记录
    INTO TABLE emp10 --插入记录表名
    FIELDS TERMINATED BY "," --逗号分隔
    (
    virtual_column FILLER, --跳过由 PL/SQL Developer 生成的csv文件中,第一列序号
    EMPNO "seq_eseq.nextval", --这一列直接取序列的下一值,而不用数据中提供的值
    ENAME upper(:ENAME)", --,用SQL函数或运算对数据进行加工处理
    JOB,
    MGR,
    HIREDATE date 'yyyy-mm-dd', -- 指定接受日期的格式,相当用 to_date() 函数转换
    SAL,
    COMM,
    DEPTNO
    )

    说明:在操作类型 append 位置可用以下中的一值:

    1) insert --为缺省方式,在数据装载开始时要求表为空
    2) append --在表中追加新记录
    3) replace --删除旧记录(用 delete from table 语句),替换成新装载的记录
    4) truncate --删除旧记录(用 truncate table 语句),替换成新装载的记录


    3.执行命令参数说明:
    eg: sqlldr scott/brant@orcl control=emps.ctl log=emps.log skip=1

    userid -- Oracle 的 username/password[@servicename]
    control -- 控制文件,可能包含表的数据
    -------------------------------------------------------------------------------------------------------
    log -- 记录导入时的日志文件,默认为 控制文件(去除扩展名).log
    bad -- 坏数据文件,默认为 控制文件(去除扩展名).bad
    data -- 数据文件,一般在控制文件中指定。用参数控制文件中不指定数据文件更适于自动操作
    errors -- 允许的错误记录数,可以用他来控制一条记录都不能错
    rows -- 多少条记录提交一次,默认为 64
    skip -- 跳过的行数,比如导出的数据文件前面几行是表头或其他描述

    oracle_sqlloader测试.rar

  • 相关阅读:
    Alpha冲刺博客集
    Alpha冲刺——第一天
    团队项目需求分析
    结对第二次作业
    项目选题报告
    随笔2 PAT1001.A+B Format (20)
    随笔1 大一下学期自我目标
    大数
    列变位法解密--百度之星B题
    hdu1874 畅通工程续 dijkstra 最短路
  • 原文地址:https://www.cnblogs.com/brant/p/5634861.html
Copyright © 2011-2022 走看看