Oracle数据库备份与恢复1\Oracle数据库备份与恢复(2)SQLLoader 之一

2.1 基本知识
    Oracle 的  SQL* LOADER  可以将外部格式化的文本数据加载到数据库表中。通常 与 SPOOL导出文本数据方法配合使用。
    1.命令格式
    SQLLDR keyword=value [,keyword=value,……]
    例:$ sqlldr user/pwd control=emp.ctl data=emp.dat bad=emp.bad log=emp.log
    2.控制文件
    SQL*LOADER  根据控制文件可以找到需要加载的数据。并且分析和解释这些数据。
    控制文件由三个部分组成,具体参数参考帮助文档:1.  全局选件,行,跳过的记录数等;2. INFILE 子句指定的输入数据;3.  数据特性说明。
    comment: ——注释
    例:
    load data infile *
    append    ——除了 append外,还有 insert、replace、truncate等方式
    into table emp fields terminated b y ‘|’
    (
    no             float external, name char(20),
    age           integer external,
    duty         char(1),salary      float external,
    upd_ts     date(14) ‘YYYYMMDDHH24MISS’)
    begindata
    100000000003|Mulder|000020|1|000000005000|20020101000000
    100000000004|Scully|000025|2|000000008000|20020101235959
    控制文件中infile选项跟sqlldr 命令行中data 选项含义相同,如使用infile *则表明数据在本控制文件以 begin data 开头的区域内。 一些选项:FIELDS TERMINATED BY WHITESPACE FIELDS TERMINATED BY x'09' FILLER_1 FILLER, //  指定某一列将不会被装载
    DEPTNO position(1:2), DNAME position(*:16), //  指定列的位置SEQNO RECNUM //载入每行的行号
    SKIP n          //  指定导入时可以跳过多少行数据
    3.数据文件
    按控制文件数据格式定义的数据行集,
    例:
    100000000001|Tom|000020|1|000000005000|20020101000000
    100000000002|Jerry|000025|2|000000008000|20020101235959
    固定格式、可变格式、流记录格式:
    固定格式:
    当数据固定的格式(长度一样)时且是在文件中得到时,要用 INFILE "fix n"
    load data
    infile 'example.dat' "fix 11"
    into table example
    fields terminated b y ',' optionally enclosed by '"'
    (col1 char(5), col2 char(7)) example.dat:
    001, cd, 0002,fghi,
    00003,lmn,
    1, "pqrs",
    0005,uvwx,
    可变格式:
    当数据是可变格式(长度不一样)时且是在文件中得到时,要用 INFILE "var n".如:
    load data
    infile 'example.dat' "var 3"
    into table example
    fields terminated b y ',' optionally enclosed by '"'
    (col1 char(5), col2 char(7)) example.dat:
    009hello,cd,010world,im,
    012my,name is,
    流记录格式: // Stream-recored format:load data infile 'xx.dat' "str '|\n'"
    into table xx field terminated b y ',' optionally enclosed by '"'
    (col1 char(5), col2 char(7))
    example.dat:
    hello, ccd,|
    world, bb,|
    4.  坏文件
    bad=emp.bad坏文件包含那些被 SQL*Loader拒绝的记录。被拒绝的记录可能是不符合要求的记录。
    5.  日志文件及日志信息
    log=emp.log当 SQL*Loader  开始执行后,它就自动建立  日志文件。日志文件包含有加载的总 结,加载中的错误信息等
 

你可能感兴趣的:(oracle,数据库,数据备份,数据恢复,休闲)