sqlldr导入文本文件数据

例1:

用包含数据的文本导入.

1)
现在有一个要导入数据库的数据的文本abc.txt,格式如下:
123,312u
124,dsfsd
5423,rtdf34
............

2)
在数据库中创建要导入的表test(数据库用户名/密码:test/test,默认在本机)
create table abc(a number(10),
b  varchar2(20),c number(10)
)

3)
编写ctl控制文件 abc.ctl,文件存放路径:abc.ctl

load data
infile 'abc.txt'
append /truncate/insert/replace

into table abc
fields terminated by ','

trailing nullcols
(a,b,c constant 100)

4)
命令提示符下执行一下命令
sqlldr userid=test/test control=abc.ctl

注:
infile '1.txt' //需要装载的数据文件的路径,如果数据在本文件中,则用infile *
append into table test //数据载入的表:
  (1)append 表示表中有数据,加在后面
  (2)INSERT 表示装入空表,有数据则停止。默认值
  (3)REPLACE 原先表中如果有数据,会被删除
  (4)TRUNCATE 如果要载入的数据与现在的数据相同,载入的数据替换现存的数据。
fields terminated by ','
//数据用是','分隔,也可用其他字符,如'|'
trailing nullcols //表示如果有字段为空也要导入

c constant 100 // 如果表中字段比文本文件字段还多,则可在控制文件中加上constant关键字,并给出某个固定值

日期时间的处理: colname date "yyyy-mm-dd hh24:mi:ss"

字符串超长(超过255字符)的处理: colname char(1000)  其中1000可自行确定

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值