Excel向oracle表中导入数据(SQL Loader)

本文详细介绍了如何通过Oracle的高级应用工具SQL*Loader,将Excel表格数据直接导入到Oracle数据库中。从Excel表格的保存格式、导入前的准备工作,到创建表结构、控制文件编写及执行SQL*Loader命令的全过程,本文提供了详尽的操作步骤和实例,帮助用户实现数据的无缝迁移。

      通过ORACLE数据库系统的高级应用工具SQL*Loader 可以将原来的Excel中存储的数据直接装入ORACLE数据库的表中。

      首先,在Microsoft-Excel中完成表格数据输入后,选择“保存文件”命令,在出现对话框的“文件类型”栏中选取“格式化文本文件(空格分隔)” 以形成一个标准格式化文本文件(*.PRN)或是选取“CSV(逗号分隔)” 形成一个逗号定界文件(*.CSV)。这两者的区别是:标准格式的文本文件中每个记录等长,数据间按原库文件字段长度紧凑排列,字符型字段数据左对齐,数 据型字段数据右对齐,不足部分用空格补足。逗号定界文件特点是各记录可不等长,字段按其定义顺序依次排列,字段间用逗号分隔,字符型字段和数据型字段的左 右端空格被消去。

      下面以"CSV(逗号分隔)"为例说明数据的导入过程.

1.假设有Excel表格如下(名为input.xls):

 

1  aname1age1
2
  bname2age2
3  cname3age3
4  dname4age4
5  ename5age5
6  fname6age6
7  gname7age7
8  hname8age8
9  iname9age9
10  jname10age10
11  kname11age11
12  lname12age12
13  mname13age13
14  nname14age14

2.把此Excel表格另存为:CSV(逗号分隔)(*.csv).名为input.csv,文件保存在C盘根目录.

3.新建一个文件,名为input.ctl.以文本文件的形式打开并输入以下代码:

LOAD DATA                        --1、控制文件标识
INFILE 'c:\input.csv'          --2、要输入的数据路径为c:\input.csv
APPEND  INTO TABLE person_zz            --3、向表person_zz中追加记录 
FIELDS TERMINATED BY ","              --4、字段终止于",",是一个逗号.也可以是X'09'表示一个制表符(TAB) 
(xh,wh,name,age)                  ----定义列对应顺序 

      注意:如果上边的这个CTL文件不好用,可以尝试把注意文件去掉,因为我没尝试过加注意,所以不知道CTL文件是否可以这样加注释,呵呵.

 

4.在oracle数据库中新建一个名为person_zz的表,里面包含四个字段,分别为xh,wh,name,age.注意,在创建数据库的时候,一定确保字段长度足够大.

CREATE TABLE person_zz(
       xh        VARCHAR2(4),
       wh       VARCHAR2(10),
       name   VARCHAR2(6),
       age      VARCHAR2(50),
);

5.在确保正确安装Oracle的情况下,在命令行中(Ctrl+R后,输入cmd回车).

输入如下命令和参数:

 

C:\Documents and Settings\user>sqlldr userid=jwzh/jwzh@orcl_170 control=c:/input.ctl

userid=用户名/密码@连接串.

control=转换格式控制文件所在位置.

执行成功后显示如下信息.

 

SQL*Loader: Release 10.2.0.1.0 - Production on 星期四 7月 28 17:26:04 2011

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

达到提交点 - 逻辑记录计数 64
达到提交点 - 逻辑记录计数 128
达到提交点 - 逻辑记录计数 192
达到提交点 - 逻辑记录计数 256
达到提交点 - 逻辑记录计数 276
 

大功告成...

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值