一、SQLLDR语法
- 语法
SQLLDR keyword=value [,keyword=value,...]
- 有效的关键字
- userid – ORACLE 用户名/口令
- control – 控制文件名
- log – 日志文件名
- bad – 错误文件名
- data – 数据文件名
- discard – 废弃文件名
- discardmax – 允许废弃的文件的数目 (全部默认)
- skip – 要跳过的逻辑记录的数目 (默认 0)
- load – 要加载的逻辑记录的数目 (全部默认)
- errors – 允许的错误的数目 (默认 50)
- rows – 常规路径绑定数组中或直接路径保存数据间的行数 (默认: 常规路径 64, 所有直接路径)
- bindsize – 常规路径绑定数组的大小 (以字节计) (默认 256000)
- silent – 运行过程中隐藏消息 (标题,反馈,错误,废弃,分区)
- direct – 使用直接路径 (默认 FALSE)
- parfile – 参数文件: 包含参数说明的文件的名称
- parallel – 执行并行加载 (默认 FALSE)
- file – 要从以下对象中分配区的文件
- skip_unusable_indexes – 不允许/允许使用无用的索引或索引分区 (默认 FALSE)
- skip_index_maintenance – 没有维护索引, 将受到影响的索引标记为无用 (默认 FALSE)
- commit_discontinued – 提交加载中断时已加载的行 (默认 FALSE)
- readsize – 读取缓冲区的大小 (默认 1048576)
- external_table – 使用外部表进行加载; NOT_USED, GENERATE_ONLY, EXECUTE
- columnarrayrows – 直接路径列数组的行数 (默认 5000)
- streamsize – 直接路径流缓冲区的大小 (以字节计) (默认 256000)
- multithreading – 在直接路径中使用多线程
- resumable – 对当前会话启用或禁用可恢复 (默认 FALSE)
- resumable_name – 有助于标识可恢复语句的文本字符串
- resumable_timeout – RESUMABLE 的等待时间 (以秒计) (默认 7200)
- date_cache – 日期转换高速缓存的大小 (以条目计) (默认 1000)
- no_index_errors – 出现任何索引错误时中止加载 (默认 FALSE)
- partition_memory – 开始溢出的直接路径分区内存限制 (kb) (默认 0)
- table – 用于快速模式加载的表
- date_format – 用于快速模式加载的日期格式
- timestamp_format – 用于快速模式加载的时间戳格式
- terminated_by – 由用于快速模式加载的字符终止
- enclosed_by – 由用于快速模式加载的字符封闭
- optionally_enclosed_by – (可选) 由用于快速模式加载的字符封闭
- characterset – 用于快速模式加载的字符集
- degree_of_parallelism – 用于快速模式加载和外部表加载的并行度
- trim – 用于快速模式加载和外部表加载的截取类型
- csv – 用于快速模式加载的 csv 格式数据文件
- nullif – 用于快速模式加载的表级 nullif 子句
- field_names – 用于快速模式加载的数据文件第一条记录字段名设置
- dnfs_enable – 启用或禁用输入数据文件 Direct NFS (dNFS) 的选项 (默认 FALSE)
- dnfs_readbuffers – Direct NFS (dNFS) 读缓冲区数 (默认 4)
- sdf_prefix – 要附加到每个 LOB 文件和辅助数据文件的开头的前缀
- help – 显示帮助消息 (默认 FALSE)
- empty_lobs_are_null – 将空白 LOB 设置为空值 (默认 FALSE)
- defaults – 直接路径默认值加载; EVALUATE_ONCE, EVALUATE_EVERY_ROW, IGNORE, IGNORE_UNSUPPORTED_EVALUATE_ONCE, IGNORE_UNSUPPORTED_EVALUATE_EVERY_ROW
- direct_path_lock_wait – 当前已锁定时, 等待表访问权限 (默认 FALSE)
二、样例
- CTL:LDR_TEST.CTL
LOAD DATA INFILE * INTO TABLE BONUS FIELDS TERMINATED BY "," (ENAME, JOB, SAL) BEGINDATA SMITH,CLEAK,3904 ALLEN,SALESMAN,2891 WARD,SALESMAN,3128 KING,PRESIDENT,2523
- 导入命令
SOLLDR SCOTT/TIGER CONTROL=LDR_TEST.CTL
- 校验
select * from scott.BONUS;