使用 Sql*Loader 向 Oracle 导入数据

发表于:2007-06-07来源:作者:点击数: 标签:
使用 Oracle 的 sql ldr工具来将SDSS.CSV文件中的数据导入 数据库 。 SDSS.CSV 放置于 E:\ 内容如下: 2.3757291096910399E-4,-8.9490277843631194,20.302597, 0.00023851549291556,-0.88450365314434698,20.098101, 2.5168890447969299E-4,7.71690299469080

使用Oraclesqlldr工具来将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    23       20
        DEC     Number    23       20
        MAG     Number    8         6

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

        load data
        infile 'E:\SDSS.csv'
        into table SDSS_STARS
        fields terminated by ","
        ( RA, DEC, MAG )


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

        sqlldr scott/tiger control=loader.ctl

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

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

注意事项:

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


原文转自:http://www.ltesting.net