sqlplus--sqlldr参数详解
sqlldr,Oracle快速导入数据的工具,是sqlplus的指令,不是sql语法里的东西。

一、下面是SQL*LOADER的基本特点:
1)能装入不同数据类型文件及多个数据文件的数据
2)可装入固定格式,自由定界以及可度长格式的数据
3)可以装入二进制,压缩十进制数据
4)一次可对多个表装入数据
5)连接多个物理记录装到一个记录中
6)对一单记录分解再装入到表中
7)可以用 数对制定列生成唯一的KEY
8)可对磁盘或 磁带数据文件装入制表中
9)提供装入错误报告
10)可以将文件中的整型字符串,自动转成压缩十进制并装入列表中。

二、sqlldr的命令行参数
sqlldr的命令行参数可以直接放在命令行,也可以放在控制文件,也可以直接放在参数文件PARFILE (parameter file)里面。
注意:在重复指定的参数里面,命令行的参数凌驾于任何写在参数文件和控制参数文件之上的参数。

Valid Keywords:
                userid -- ORACLE username/password
               control -- control file name
                   log -- log file name
                   bad -- bad file name
                  data -- data file name
               discard -- discard file name   
            discardmax -- number of discards to allow          (Default all)
                  skip -- number of logical records to skip    (Default 0)
                  load -- number of logical records to load    (Default all)
                errors -- number of errors to allow            (Default 50)
                  rows -- number of rows in conventional path bind array or between direct path data saves(Default: Conventional path 64, Direct path all)
              bindsize -- size of conventional path bind array )
                silent -- suppress messages during run (header,feedback,errors,discards,partitions)
                direct -- use direct path                      (Default FALSE)
               parfile -- parameter file: name of file that contains parameter specifications
              parallel -- do parallel load                     (Default FALSE)
                  file -- file to allocate extents from
 skip_unusable_indexes -- disallow/allow unusable indexes or index partitions  (Default FALSE)
skip_index_maintenance -- do not maintain indexes, mark affected indexes as unusable  (Default FALSE)
   commit_discontinued -- commit loaded rows when load is discontinued  (Default FALSE)
              readsize -- size of read buffer                  (Default )
        external_table -- use external table for load; NOT_USED, GENERATE_ONLY, EXECUTE  (Default NOT_USED)
       columnarrayrows -- number of rows )
            streamsize -- size of direct path stream buffer )
        multithreading -- use multithreading in direct path
             resumable -- enable or disable resumable for current session  (Default FALSE)
        resumable_name -- text string to help identify resumable statement
     resumable_timeout -- wait time ()
            date_cache -- size ()
       no_index_errors -- abort load on any index errors  (Default FALSE)

三、控制文件参数
================控制文件参数:================

OPTIONS ({ [SKIP=integer] [LOAD = integer ]
[ERRORS = integer] [ROWS=integer]
[BINDSIZE=integer] [SILENT=(ALL|FEEDBACK|ERROR|DISCARD)]

/****一,要加载的数据文件。
LOAD[DATA]
[ {INFILE | INDDN } {file | * }
--INFILE 和INDDN是同义词,它们后面都是要加载的数据文件。如果用 * 则表示数据就在控制文件内。[STREAM | RECORD | FIXED length [BLOCKSIZE size]|VARIABLE [length] --STRAM 表示一次读一个字节的数据。--RECORD 使用宿主操作系统文件及记录管理系统。--FIXED length 要读的记录长度为length字节。--VARIABLE 被读的记录中前两个字节包含的长度,length 记录可能的长度。默认为8k 字节。]
[{ BADFILE | BADDN } file ]--BADFILE和BADDN同义。Oracle 不能加载数据到数据库的那些记录。
[{DISCARDS | DISCARDMAX} integr ]--DISCARDFILE和DISCARDDN是同义词。记录没有通过的数据。--DISCARDS和DISCARDMAX是同义词。Integer 为最大放弃的文件个数。******/
/****二,加载方法
[{INDDN | INFILE} . . . ]
[APPEND | REPLACE | INSERT ]--APPEND 给表添加行。--INSERT 给空表增加行(如果表中有记录则退出)。--REPLACE(truncate) 先清空表在加载数据。

[RECLENT integer]--RECLEN 用于两种情况:     1)SQLLDR不能自动计算记录长度,     2)用户想看坏文件的完整记录时。     对于后一种,Oracle只能按常规把坏记录部分写到错误的地方。如果看整条记录,则可以将整条记录写到坏文件中。*****/
/*三,指定最大的记录长度*/--CONCATENATE 指定最大的记录长度,允许用户设定一个整数,表示要组合逻辑记录的数目。

/* 四,建立逻辑记录:*/
[ { CONCATENATE integer |CONTINUEIF { [THIS | NEXT] (start[: end])LAST } Operator { 'string' | X 'hex' } } ]
--THIS 检查当前记录条件,如果为真则连接下一个记录。--NEXT 检查下一个记录条件。如果为真,则连接下一个记录到当前记录来。--start: end 表示要检查在THIS或NEXT字串是否存在继续串的列,以确定是否进行连接。

/*五,指定要加载的表:*/INTO TABLE [user.]table--INTO TABLE 要加的表名。
[APPEND | REPLACE|INSERT]
[WHEN condition [AND condition]...]

/*六,介绍并括起记录中的字段*/
[FIELDS [delimiter] ]
(
column {RECNUM | CONSTANT value |SEQUENCE ( { integer | MAX |COUNT} [, increment] ) |[POSITION ( { start [end] | * [ + integer] }) ]
datatype
   [TERMINATED [ BY ] {WHITESPACE| [X] 'character' } ]
   [[OPTIONALLY] ENCLOSE  [BY] [X]'charcter']
[NULLIF condition ]
[DEFAULTIF condotion]
}-- FIELDS  给出记录中字段的分隔符, FIELDS格式为:FIELDS [TERMIALED [BY] {WHITESPACE | [X] 'charcter'} ]  [ [ OPTIONALLY] ENCLOSE [BY] [X]'charcter' ]  TERMINATED 读完前一个字段即开始读下一个字段直到结束。  WHITESPACE 是指结束符是空格的意思。包括空格、Tab、换行符、换页符及回车符。如果是要判断单字符,可以用单引号括起,如X'1B'等。  OPTIONALLY ENCLOSED 表示数据应由特殊字符括起来。也可以括在TERMINATED字符内。使用OPTIONALLY要同时用TERMINLATED。  ENCLOSED 指两个分界符内的数据。如果同时用 ENCLOSED和TERMINAED ,则它们的顺序决定计算的顺序。

/** 七,定义列:**/
  column 是表列名。列的取值可以是:
  BECHUM 表示逻辑记录数。第一个记录为1,第2个记录为2。
  CONSTANT 表示赋予常数。
  SEQUENCE  表示序列可以从任意序号开始,格式为:SEQUENCE         ( { integer | MAX |COUNT} [,increment]
  POSITION 给出列在逻辑记录中的位置。可以是绝对的,或相对前一列的值。格式为:POSITION ( {start[end] | * [+integer] } )
  Start 开始位置
  * 表示前字段之后立刻开始。
  + 从前列开始向后条的位置数。

/**八,定义数据类型:
.字符类型数据
    CHAR  [ (length)] [delimiter]
    length缺省为 .
  .日期类型数据
    DATE [ ( length)]['date_format' [delimiter]
    使用to_date函数来限制。
  .字符格式中的十进制
    DECIMAL EXTERNAL [(length)] [delimiter]
    用于常规格式的十进制数(不是二进制=> 一个位等于一个bit)。
  .压缩十进制格式数据
    DECIMAL (digtial [,precision])
  .双精度符点二进制
    DOUBLE
  .普通符点二进制
    FLOAT
  .字符格式符点数
    FLOAT EXTERNAL [ (length) ] [delimiter]
  .双字节字符串数据
    GRAPHIC [ (legth)]
  .双字节字符串数据
    GRAPHIC EXTERNAL[ (legth)]
  .常规全字二进制整数
    INTEGER
  .字符格式整数
    INTEGER EXTERNAL
  .常规全字二进制数据
    SMALLINT
  .可变长度字符串
    VARCHAR
  .可变双字节字符串数据
    VARGRAPHIC    
**/
[ ,...][ ,...]
)
[INTO TABLE...]
[BEGINDATA]

sqlplus--sqlldr命令参数详解的更多相关文章

  1. JAVA命令参数详解

    JAVA命令参数详解 JAVA命令详解 结构 说明 Java 和 OldJava JIT 选项 另请参阅 结构 java [ options ] class [ argument ... ] java ...

  2. JAVA 命令参数详解System.setProperty(

    JAVA 命令参数详解: 1.-D<name>=<value> set a system property  设置系统属性. java -D参数简化加入多个jar java命令 ...

  3. Oracle中用exp/imp命令参数详解【转】

    Oracle中用exp/imp命令参数详解 [用 exp 数 据 导 出]:1  将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中   exp sy ...

  4. nginx命令:启动,停止及命令参数详解

    nginx命令:启动nginx 在Windows上安装好nginx后,我们需要启动nginx服务,启动nginx服务的命令行操作主要有两种方式,即 1 C:/nginx-0.8.53>nginx ...

  5. (转)Linux curl命令参数详解

    Linux curl命令参数详解 命令:curl在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具.它支持文件的上传和下载,是综合传输工具, ...

  6. 3.3、Ansible命令参数详解

    0.ansible 命令参数详解: [root@localhost ~]# ansible Usage: ansible <host-pattern> [options] Options: ...

  7. Spring Boot启动命令参数详解及源码分析

    使用过Spring Boot,我们都知道通过java -jar可以快速启动Spring Boot项目.同时,也可以通过在执行jar -jar时传递参数来进行配置.本文带大家系统的了解一下Spring ...

  8. ffmpeg命令参数详解

    ffmpeg命令参数详解 http://linux.51yip.com/search/ffmpeg ffmpeg图片加滤镜效果 参考:https://cloud.tencent.com/develop ...

  9. Linux中mpstat命令参数详解

    Linux中mpstat命令参数详解 mpstat 是 Multiprocessor Statistics的缩写,是实时系统监控工具.其报告与CPU的一些统计信息,这些信息存放在 /proc/stat ...

  10. shell编程系列23--shell操作数据库实战之mysql命令参数详解

    shell编程系列23--shell操作数据库实战之mysql命令参数详解 mysql命令参数详解 -u 用户名 -p 用户密码 -h 服务器ip地址 -D 连接的数据库 -N 不输出列信息 -B 使 ...

随机推荐

  1. Spinner使用二

    Spinner使用二 一.效果图 二.方法及核心函数 三.代码 后面补

  2. ActiveMQ 消息存储

    本章重点 ActiveMQ 中,队列和主题里的消息是怎么存储的 ActiveMQ 提供的四种消息存储形式 ActiveMQ 是怎么为消费者缓存消息的 使用订阅恢复模式,怎么控制消息缓存 简介 JMS ...

  3. linux服务器应用NTP配置时间同步

    linux服务器应用NTP配置时间同步 • 为什么建议使用ntpd而不是ntpdate? #####原因很简单,ntpd是步进式的逐渐调整时间,而ntpdate是断点更新,比如现在服务器时间是9.18 ...

  4. IaaS中的统一存储:从设计到实现

    转自:https://www.ustack.com/blog/tycc/ “原生的OpenStack并不支持统一存储,云主机服务Nova.镜像服务Glance.云硬盘服务Cinder的后端存储各不相同 ...

  5. python_判断字符串编码的方法

    1. 安装chardet 在命令行中,进入Python27\Scripts目录,输入以下的命令:easy_install chardet 2. 操作 import chardet f = open(' ...

  6. Jmeter基本组件

    学习jmeter首先配置环境,使工具运行起来,然后需要了解该工具大致的内容,以下是写的Jmeter基本组件 1.添加线程组:右键点击“测试计划”-->“添加”-->“Threads(Use ...

  7. nginx中关于并发数的问题worker_connections,worker_processes

    我认为,要搞清楚这个公式是否正确,以及如何计算的,那首先要对nginx的各个配置说明有清晰的认识: 从用户的角度,http 1.1协议下,由于浏览器默认使用两个并发连接,因此计算方法: nginx作为 ...

  8. HihoCoder1445 重复旋律5(后缀自动机)

    重复旋律5 时间限制:10000ms 单点时限:2000ms 内存限制:512MB 描述 小Hi平时的一大兴趣爱好就是演奏钢琴.我们知道一个音乐旋律被表示为一段数构成的数列. 现在小Hi想知道一部作品 ...

  9. hdu5542 The Battle of Chibi[DP+BIT]

    求给定序列中长度为M的上升子序列个数.$N,M<=1000$. 很容易想到方法.$f[i,j]$表示以第$i$个数结尾,长度为$j$的满足要求子序列个数.于是转移也就写出来了$f[i][j]+= ...

  10. C++对C语言的拓展(4)—— 函数重载

    函数重载(Function Overload):用同一个函数名定义不同的函数,当函数名和不同的参数搭配时函数的含义不同. 1.重载规则 (1)函数名相同: (2)参数个数不同,参数的类型不同,参数顺序 ...