当前位置:文档之家› 把Excel中的数据导入Oracle 数据库中练习题.doc

把Excel中的数据导入Oracle 数据库中练习题.doc

教你怎么样把Excel 文件中的数据导入到Oracle 数据库中
第一种:最简单的方法。

在EXCEL中全选数据,然后COPY。

接着打开PL/SQL DEVELOPER,打开SQL窗口,输入select * from mytable for update; 然后执行,就可以看到查出目的表mytable数据,如果是空表,当然是没数据了。

然后点击下面列表上方的锁(编辑数据),不管有没有数据,我们选择最后一个空行的行头,让整行变成黑色则表示整行已全选中。

注意该行左边是有个黑色实心三角箭头的。

然后粘贴,再commit 就OK咯。

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

图:选中了行然后粘贴数据
第二种:简单的方法。

先将Excel文件另存为一个.csv 文件,然后编写一个insert.ctl文件,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(x)要与Oracle表中的字段名保持一致(大写)
最后在DOS命令下执行以下命令:
sqlldr user/password control=insert.ctl
图:表示导入了12条记录
第三种:比较简单的方法。

如果数据不是很多,可以使用如下方法:
假设表名为test_excel,有4列数据,则设置Excel的E1单元格的值为
="insert into test_excel values(‘” & A1 & “’, ‘” & B1 & “’, ‘” & C1 & “’, ‘” & D1 & “’);”
向下拖动该公式,则生成一列sql,把其copy到sql/plus中执行即可(如果数据中有单引号,需要先替换成两个),临时导数据用这种方法还是比较方便的。

图:使用Excel的公式功能为我们生成的SQL语句
图:导入到Oracle数据库后的表数据
第四种:比较麻烦的方法
1、在本地创建一个Access数据库,将Excel数据先导入到Access。

可直接导入点击鼠标右键,选择导入,文件类型选择要导入的Excel文件,也可通过创建宏用TransferSpreadsheet 函数实现。

2、在本地创建ODBC,链接oracle数据库。

将oracle中需要导入数据的表以链接表的方式在本地Access中创建(千万不要使用导入表)。

3、在Access数据库中创建插入查询将导入好的Excel数据导入到oracle中。

此方法保证成功。

第五种:高端方法。

利用异构数据库.
建一个实例,通过ODBC基于EXCEL文件.
再以db_link的方式进行操作:insert into oracle_instance.tab select * from excel_instance.tab。

相关主题