ITPub博客

首页 > Linux操作系统 > Linux操作系统 > SQL LOADER的使用方法

SQL LOADER的使用方法

原创 Linux操作系统 作者:andyann 时间:2011-09-01 17:23:12 0 删除 编辑
SQL*LOADER

SQL*LOADER是ORACLE的数据加载工具,通常用来将操作系统文件(数据)迁移到ORACLE数据库中。
SQL*LOADER是大型数据仓库选择使用的加载方法,因为它提供了最快速的途径(DIRECT,PARALLEL)。

执行sqlldr命令可以看到相关帮助信息。

使用说明:
sqlldr userid=scott/scott@oradb control='D:/input.ctl' log='D:/input.log'

input.ctl内容:

load data                          --控制文件标识。

infile *                                --当为*时导入的数据在控制文件中,BEGINDATA后面为导入的数据。
infile 'D:/data.csv'            --要输入的数据文件名称(CSV格式数据)
badfile 'D:/data.bad'        --BAD文件路径

append|insert|replace|truncate    --append在表后追加,insert插入空表,replace替代原有内容。
into table tableName                      --要导入的数据库表名称  

fields terminated by ","                    --指定字段分隔符为,,csv文件用。
fields terminated by whitespace  --指定字段分隔符为tab,txt文件用。
fields terminated by X'09'               --以十六进制格式 '09' 表示的。
optionally enclosed by ""                --段选择性地封闭导入为选择的后面为空。  
trailing nullcols                                --表的字段没有对应的值时允许为空。

(col1 terminated by ",")                   --无声明fields terminated by时,列可单独定义。
(col1,col2,col3 FILLER)                  --定义列,FILLER标识这列不会装载。

(col_1 [interger external])               --定义列整数型
(col_1 [date "dd-mon-yy"])             --定义列日期型
(col_1 [char])                                    --第一列字符型

(col_1 position(1:2))                       --指定位置。
(col_1 position(*:2))                        --字段的开始位置在前一字段的结束位置。
(col_1 position(*:2) char(8))          --指定位置以及字段的类型。
(col_1 "upper(:col_1)")                   --字段使用函数。

begindata                                          --对应开始的INFILE * 要导入的内容就在control文件里。
10,sql,what                                        --begindata后的数值的前面不能有空格  
20,lg,show
......

注释:
APPEND        原先的表有数据,加在后面。
INSERT         装载空表,如果原先的表有数据,sqlloader会停止(默认值)。
REPLACE     原先的表有数据,原先的数据会全部删除。
TRUNCATE  指定的内容和replace的相同,会用truncate语句删除现存数据
 

Sqlldr的函数关键字说明: 
Userid     --oracle用户名  userid = username/password@serviceName 
Control    --控制文件名称  control = 'c:/sqlload.sld' 
Log          --日志文件名称  log = 'c:/sqlload.log' 
Bad          --损坏文件名称  bad = 'c:/sqlload.bad'
Data         --数据文件名    data = 'd:/data.csv' 
Discard    --discard file name 
Discardmax --number of discards to allow(默认全部) 
Skip          --导入时跳过的记录行数(默认0) 
Load        --导入时导入的记录行数(默认全部) 
Errors      --允许错误的记录行数(默认50)  

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24070945/viewspace-706442/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-03-24

  • 博文量
    25
  • 访问量
    89150