`

SQLLDR的使用

阅读更多

SQLLDR的使用,有两种方法:

1、使用一个控制文件,在控制文件中加入数据;

2、使用一个控制文件,加上一个或多个数据文件。

 

为了使控制和数据的分离,主要用的是第二种方式

控制文件的格式(Test.CTL):

UNRECOVERABLE -- 关闭数据库日志
INFILE 'd:/ctltest/data1.txt' -- 指定外部数据文件
INFILE 'd:/ctltest/data_new.txt' --可以指定多个外部数据文件
-- 这里还可以使用 BADFILE、DISCARDFILE 来指定坏数据和丢弃数据的文件
Append  -- 操作类型,这里还可以用INSERT、TRUNCATE、REPLACE
INTO TABLE basechannelvisittab -- 要插入记录的表
Fields terminated by ","  -- 数据中每行记录用 "," 分隔
trailing nullcols
(
  USER_ ,
  IP ,
  TIME_ Date 'yyyy-mm-dd hh24:mi:ss',
  CHANNEL ,
  COUNT_ ,
  VERS ,
  PART_VAL
)

 

 

操作类型的区别如下:

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

 

执行命令如下:

 

sqlldr userid=ganwu/ganwu@ora_98 control=test.ctl log=test.out direct=true

 

UNRECOVERABLE keyword may be used only in direct path

UNRECOVERABLE(关闭数据库日志)只能在direct方式下使用

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics