内蒙古会计人员首页:如何将excel数据导入oracle方法总结

来源:百度文库 编辑:偶看新闻 时间:2024/04/30 04:41:10

 

已有 906 次阅读 2009-6-28 11:37 |系统分类:数据库

excel数据导入oracle中最简单的方法:

如果你的单个excel文件不大的情况下(少于100000行):

1、在EXCEL中全选数据,然后COPY。接着打开PL/SQL DEVELOPER,打开SQL窗口,输入select * from mytable for update;然后执行,就可以看到查出目的表mytable数据,如果是空表,当然是没数据了。然后点击下面列表上方的锁(编辑数据), 再点一下加号(插入记录),下面列表多出一空白行,注意该行左边是有个黑色实心三角箭头的。

2、下面是最有技术难度也是最高明的一件事了:鼠标点击上面特意提到的黑色实心三角箭头,这时空白行被选中,全变成蓝色。然后右键,在弹出菜单中选择“粘贴”,over,等个几十秒,我电脑太慢了,一会数据就出来了,超级简单吧,没骗你吧?这里又让你见识到了PL/SQL DEVELOPER强大功能中的一个小功能了。。。。(后面几句纯属废话)

5、当然最后别忘了COMMIT。

真的完了。。。HOHO~~

说明:而且这个方法还有个好处就是对EXCEL中的日期型、数值型字段的处理也很正常,数据类型不会丢失。

方法一:
  
1、在本地创建一个Access数据库,将Excel数据先导入到Access。可直接导入点击鼠标右键,选择导入,文件类型选择要导入的Excel文件,也可通过创建宏用TransferSpreadsheet函数实现。
2、在本地创建ODBC,链接oracle数据库。将oracle中需要导入数据的表以链接表的方式在本地Access中创建(千万不要使用导入表)。
3、在Access数据库中创建插入查询将导入好的Excel数据导入到oracle中。


  
方法二:
  
先把Excel另存为.csv格式文件,如test.csv,再编写一个insert.ctl
用sqlldr进行导入!
insert.ctl内容如下:
load data           --1、控制文件标识
infile \'test.csv\'       --2、要输入的数据文件名为test.csv
append into table table_name     --3、向表table_name中追加记录
fields terminated by \',\'   --4、字段终止于\',\',是一个逗号
(field1,
field2,
field3,
...
fieldn)-----定义列对应顺序
  
注意括号中field排列顺序要与csv文件中相对应
然后就可以执行如下命令:
sqlldr user/password control=insert.ctl

方法三:
这里是借用delphi的database desktop来实现excel文件的导入
1、将excel表改为后缀为.dbf的dbase IV 表(最高版本)
.txt文本文件用excel打开
加上字段名
选数据
2、用delphi 自带的databbese desktop查看数据

3.tools->utilities->copy ->选择要导入的数据库
alias=none 选择.dbf文件
输入密码,转换(注意要大写)

4.成功导入后,按条件再加以修改


方法四:

打开excel文件,选另存为TXT文本文件,有了这个文本文件,就有很多方法可以导入到oracle中了,可以通过SQL Loader可以导入到Oracle 中,也可以通过pl/sql developer 导入,也可以通过Golden的imp/exp工具可以直接导入文本文件。。。。。等等,这些方法思路都一样,但是这种方法有一个缺点,就是文本文件会丢失数据类型信息。

方法五:

如果你的电脑同时也安装了sql server ,可以利用sql server 的导入导出数据工具DTS,数据源驱动选excel97-2000,然后选你的excel文件,目的驱动选Oracle in OraHome90,然后新建一个指向你的oracle 用户的系统类型的odbc数据源,注意输入大写的用户名和密码,然后按着向导下一步,后面几步自己可以自己看懂,就不详细介绍了,最后点完成,如果没有表,默认会首先创建表,然后COPY数据。注意EXCEL第一行要是字段名。