ITPub博客

首页 > 数据库 > Oracle > sqlldr简单使用

sqlldr简单使用

原创 Oracle 作者:dasong2410 时间:2011-10-27 18:44:29 0 删除 编辑
文件名:
sqlldr.ctl

内容:
load data
infile 'test.csv'
preserve blanks
into table t_test
truncate
fields terminated by ',' optionally enclosed by '"'
trailing nullcols
(
  flag filler,
  col1 constant '',
  col2 nullif col2='2',
  col3,
  col4 defaultif col3='3',
  col5 sequence(max, 1),
  col6 sequence(count, 1),
  col7 sequence(10, 1),
  col8 recnum,
  col9 sysdate,
  col10 date 'YYYY-MM-DD'
)

注释:
col2 nullif col2='2', 如果col2等于2,则给col2赋空值
col4 defaultif col3='3', 如果col3等于3,则给col3赋数据类型的默认值(number赋0,其他赋null)

preserve blanks 保留记录中的空格等
filler  只映射一列数据,但不入库

sequence([count|max|integer][,incr]) 
count:从当前记录数加incr开始 
max:从当前表中最大的值加incr开始 
integer:从指定数字开始
incr:步长
recnum
接收到的记录条数,包括skip、discard,reject掉的数据
constant
常量,指定某个字段的值始终为某个值
sysdate
日期,指定某个字段为当前日期
表结构:
create table t_test
(
  col1 varchar2(20),
  col2 varchar2(20),
  col3 varchar2(20),
  col4 varchar2(20),
  col5 varchar2(20),
  col6 varchar2(20),
  col7 varchar2(20),
  col8 varchar2(20),
  col9 date,
  col10 date
);

数据文件:test.csv
1,1,a,1,2011-01-01
1,2,a,2,2011-01-02
1,3,a,3,2011-01-03
1,4,a,4,2011-01-04
1,5,a,5,2011-01-05
1,6,a,6,2011-01-06

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

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

注册时间:2011-05-12

  • 博文量
    66
  • 访问量
    349767