这几天一直在为这个问题头疼,在网上搜了很多种方法,也问题了许多朋友,现在终于解决了,我只用了下面这一种方法。
1、将xls格式另存为cvs(逗号隔开)。例如:左边为xls的表格;右边为转换成csv的文档,保存csv文档到E盘。
![](https://i-blog.csdnimg.cn/blog_migrate/ecd45e613b0ef46053d781f5bcd6033e.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/ad95a703dee7b2f878fb51eb4d9a2521.jpeg)
2、在Oracle中创建数据库,列数要与导入的xls的列数相同。
create table t_code_sys_city
(
cid varchar(6),
cname varchar(50)
);
3、创建city.ctl文件,保存在E盘,内容如下:
load data
infile 'e:\city.csv' ----csv的路径
replace into table t_code_sys_city ----创建的表名 fields terminated by ',' optionally enclosed by '"'
trailing nullcols
(cid,cname) ----创建的表中的列
4、运行cmd:sqlldr 敲回车后显示如下:
control=e:\city.ctl 然后再敲回车就运行拉!
【解释一下: 是登陆到Oracle的用户名称、口令和主机字符串。】
整个过程界面如下图所示:如果出现 达到提交点。。。 就说明成功了。
其实还有其他很多方法,例如:先导入sqlserver中,然后再导入Oracle。不过就是麻烦些。