您的位置:首页 > 数据库 > Oracle

使用 Sql*Loader 向 Oracle 导入数据

2005-03-02 15:46 681 查看
使用Oracle的sqlldr工具来将SDSS.CSV文件中的数据导入数据库。

SDSS.CSV 放置于 E:/ 内容如下:

2.3757291096910399E-4,-8.9490277843631194,20.302597,
0.00023851549291556,-0.88450365314434698,20.098101,
2.5168890447969299E-4,7.7169029946908094E-2,18.762859,
2.9486118387225802E-4,-9.8447540892170409,19.943598,
2.94865362739442E-4,-9.8447540642891909,19.944597,

操作步骤:

1、在Oracle中按照导入数据的格式建立一个空表

类型 大小 小数
RA Number 18 15
DEC Number 18 15
MAG Number 8 6

2、编写一个loader.ctl文件,内容如下

load data //控制文件标识
infile '/backup/incoming/SDSS.csv' //要输入的数据文件名
into table SDSS //对表进行的操作
fields terminated by "," //字段终止符定义
( RA, DEC, MAG ) //定义列对应顺序

操作分类:
a、insert,为缺省方式,在数据装载开始时要求表为空
b、append,在表中追加新记录
c、replace,删除旧记录,替换成新装载的记录
d、truncate,同上

3、在CMD中执行以下语句:

sqlldr sss/oracle control=loader.ctl

4、自动在当前目录下生成两个文件

默认日志文件名为:loader.log
默认坏记录文件为:SDSS.bad

注意事项:

1、必须在服务器本机上操作,不能在只安装Oracle客户端的机器上使用。
2、CSV文件的内容是以“,“分隔的,如果数据在结尾没有逗号导入时就会出错。
可以利用UltraEdit等文本编辑器处理一下,将 ^p 替换为 ,^p 就可以在每行的末尾加上一个逗号了。
3、数据导入需要较长的时间。

4、导入不同的表需要使用不同的.ctl文件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: