如何将 xls 格式的数据导入到 Oracle 中?

QQ306832666 2009-03-25 10:02:57
我用的是 Oracle9i
要把xls格式的数据导入到Oracle中。
在网上搜了这种方法,但是还是不行。。 到最后执行错误
请大家帮我看看,小妹不胜感激。
过程如下: (如果大家有其他好办法,请不吝赐教!)

1.录入excel测试表格,test.xls。
2.另存为.csv格式
3.创建sql*loader控制文件test.ctl,内容如下:
Load data
Infile 'c:\test.csv'
insert Into table test Fields terminated by ','(column1,column2,column3,column4,column5)

需要将数据文件拷贝到对应位置

4.到数据库中建立对应的测试表test

create table test (
column1 Varchar2(10),
column2 Varchar2(10),
column3 Varchar2(10),
column4 Varchar2(10),
column5 Varchar2(10)
)

5.执行导入命令
Sqlldr userid = system/manager control='C:\test.ctl'

导入成功!
...全文
1161 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
guyupday 2010-10-12
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 ks_reny 的回复:]
PLSQL Developer這個工具就可以,我每次都用這個.
在PLSQL Developer中 輸入 Select * From tb for update 執行后點一下 edit data.
然後把excel中的內容用ctrl+c 複製到PLSQL Developer 很方便的.
[/Quote]

数据量不大的话可以这么搞

sqlldr导入,网上有很多,www.oracle.com
  • 打赏
  • 举报
回复
buxinga
宇尘埃 2009-03-25
  • 打赏
  • 举报
回复
将excel中的数据导入到oracle中,有如下两种主要的应用场景:

(1)一次性/每年等长时间间隔的初始化数据

方法可以采用楼主的方式 ,还有其他两种简易方法选择:

A. 首先用excel做好自增列,用pl/sql将对应同结构的表置于编辑状态,直接拷贝excel表中的需要导入的行到ORACLE表中的行。(注意在excel表第一列要插入的列前插入一个空列)

B.用sqlserver的dts,直接从excel/csv文件到oracle,按wizard提示做就可以,比较简便

(2)持续的需要多次进行的数据转入,如每天导入

a.定义DTS包,利用计划任务管理器做好定时计划

b.使用sql*loader,这种方法效率最高,不过要处理下要导入文本文件(excel与文本文件无本质区别)

c.用编程语言实现,如果用JAVA开发可通过javaexcelapi进行编程实现;如果是SQL,可用oracle提供的专门的API来实现。


关于楼主说出错的那种方法,一般是格式有问题。

你用记事本打开那个test.csv看看格式是否是你所描述的样子,只是有‘,’隔开了,没有其他字符。
power888 2009-03-25
  • 打赏
  • 举报
回复
诚聘DBA!!!!

有意者请联系rosa_dlhr@hotmail.com
本科以上学历,计算机或相关专业
-至少2年的Oracle数据库管理的相关经验
-熟悉Oracle的备份恢复,数据迁移,RAC,数据库调优和PL/SQL编写
-熟悉Red Hat和Solaris操作系统及Shell脚本编写
-熟练的英语听说读写能力
-良好的沟通和表达能力
-在高强度和富有挑战的工作环境下,进行有效工作的能力
-富有创造力,工作积极主动,能主动地与项目组其他成员进行合作
-高度认同公司的企业文化:尊重员工,诚实和正直,追求品质和卓越,以客户为中心,恪守个人职责和倡导团队精神,求变创新,专注于技术,社会责任。
yf520gn 2009-03-25
  • 打赏
  • 举报
回复
Sqlldr userid = system/manager control='C:\test.ctl'
居然不用写服务名?
标准格式是这样

SQLLDR 用户名/密码@服务名 control='C:\test.ctl' error=1000

PS:ERROR是默认允许错误记录数
cosio 2009-03-25
  • 打赏
  • 举报
回复
Sqlldr 这个要注意格式!
xiaoxiao1984 2009-03-25
  • 打赏
  • 举报
回复
贴出错误

或者直接把xls文件另存为txt文件,使用plsql的文本导入工具,直接导入就可以了

QQ306832666 2009-03-25
  • 打赏
  • 举报
回复
下面粘的是 在网上搜的方法 它上面写 导入成功
可是我操作到最后确实出错误了
QQ306832666 2009-03-25
  • 打赏
  • 举报
回复
回帖是一种美德!每天回帖即可获得 10 分可用分!
ntahua 2009-03-25
  • 打赏
  • 举报
回复
俺糊涂了,到底是“最后执行错误”,还是"导入成功!"
ks_reny 2009-03-25
  • 打赏
  • 举报
回复
PLSQL Developer這個工具就可以,我每次都用這個.
在PLSQL Developer中 輸入 Select * From tb for update 執行后點一下 edit data.
然後把excel中的內容用ctrl+c 複製到PLSQL Developer 很方便的.
phoenixYiYou 2009-03-25
  • 打赏
  • 举报
回复
Toad就有这个功能!

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧