博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

用SQL*Loader将Excel数据导出到Oracle

Posted on 2008-12-01 23:29  徐正柱-  阅读(329)  评论(0编辑  收藏  举报

 

实现目的:往oracle数据库中,插入excel文件中的数据

 

实现步骤:

 

1、打开MicroSoft Excel 2000

 

2、文件(F)→新建(N)→工作簿→

 

3、输入数据后,存盘为test.xls,

 

4、文件(F)→另存为(A)→

 

保存类型为:制表符分隔,起名为text.txt,保存到C:

 

 

 

5、须先创建表结构:

连入SQL*Plus,以system/manager用户登录,

SQL> conn system/manager

 

创建表结构

SQL> create table test

    (

    id       number,        --序号

    username    varchar2(10),     --用户名

    password    varchar2(10),     --密码

    sj       varchar2(20)      --建立日期

    );

 

6、创建SQL*Loader输入数据所需要的文件,均保存到C:,用记事本编辑:

控制文件:input.ctl,内容如下:

 

  load data           --1、控制文件标识

  infile 'test.txt'       --2、要输入的数据文件名为test.txt

  append into table test    --3、向表test中追加记录

  fields terminated by X'09'  --4、字段终止于X'09',是一个制表符(TAB)

  (id,username,password,sj)   -----定义列对应顺序

 

a、insert,为缺省方式,在数据装载开始时要求表为空

b、append,在表中追加新记录

c、replace,删除旧记录,替换成新装载的记录

d、truncate,同上

 

7、在DOS窗口下使用SQL*Loader命令实现数据的输入

 

C:>sqlldr userid=system/manager control=input.ctl

 

  默认日志文件名为:input.log

  默认坏记录文件为:input.bad

 

如果是远程对数据库进行导入操作,则输入字符串应改为:

C:>sqlldr userid=system/manager@serviceName_192.168.1.248 control=input.ctl

 

8、连接到SQL*Plus中,查看是否成功输入,可比较input.log与原test.xls文件,查看数据是否全部导入,是否导入成功.