作者:乔山办公网日期:
返回目录:excel表格制作
具体的导入操作如下: 1、点击“工具”—知“ODBC导入器…”菜单,打开导入功道能。 2、 选择要连接类型和导入内的Excel文件 3、 选择所要导入数据所在的“Sheet”表 4、 根据Sheet表结构容创建Oracle数据表 5、 完成数据导入
使用OpenRowSet操作Excel
有两种接口可供选择:Microsoft.Jet.OLEDB.4.0(以下简称 Jet 引擎)和Microsoft.ACE.OLEDB.12.0(以下简称 ACE 引擎)。
Jet 引擎大家都很熟悉,可以访问 Office 97-2003,但不能访问 Office 2007。
ACE 引擎是随 Office 2007 一起发布的数据库连接组件,既可以访问 Office 2007,也可以访问 Office 97-2003。
另外:Microsoft.ACE.OLEDB.12.0 可以访问正在打开的 Excel 文件,而 Microsoft.Jet.OLEDB.4.0 是不可以的。
语法举例:
--> Jet 引擎访问 Excel 97-2003
select * from OpenRowSet('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;HDR=Yes;IMEX=1;Database=D:\97-2003.xls', 'select * from [Sheet1$]')
select * from OpenRowSet('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;HDR=Yes;IMEX=1;Database=D:\97-2003.xls', [Sheet1$])
select * from OpenDataSource('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;HDR=Yes;IMEX=1;Database=D:\97-2003.xls')...[Sheet1$]
select * from OpenDataSource('Microsoft.Jet.OLEDB.4.0', 'Data Source=D:\97-2003.xls;Extended Properties="Excel 8.0;HDR=Yes;IMEX=1"')...[Sheet1$]
--> ACE 引擎访问 Excel 97-2003
select * from OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\97-2003.xls', 'select * from [Sheet1$]')
select * from OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\97-2003.xls', [Sheet1$])
select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\97-2003.xls')...[Sheet1$]
select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0', 'Data Source=D:\97-2003.xls;Extended Properties="Excel 12.0;HDR=Yes;IMEX=1"')...[Sheet1$]
--> ACE 引擎访问 Excel 2007
select * from OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\2007.xlsx', 'select * from [Sheet1$]')
select * from OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\2007.xlsx', [Sheet1$])
select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\2007.xlsx')...[Sheet1$]
select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0', 'Data Source=D:\2007.xlsx;Extended Properties="Excel 12.0;HDR=Yes;IMEX=1"')...[Sheet1$]
注:
Excel 2007 工作簿文件的扩展名是:xlsx
HDR=Yes/No
可选参数,指定 Excel 表的第一行是否列名,e79fa5e98193e59b9ee7ad94335缺省为 Yes,可以在注册表中修改缺省的行为。
IMEX=1
可选参数,将 Excel 表中混合 Intermixed 数据类型的列强制解析为文本。
(1)首先,可以e799bee5baa6e4b893e5b19e336不按照数据库中的字段存放顺序,编辑形成Excel表中的数据,准备导入到oracle中:
(2)把Excel文件另存为(文本文件(制表符分隔)(*.txt))
在另存为之前要选中Excel中要另存为的数据,否则形成的txt文件可以导入不了pl*sql中:
(3)将新生成的数据录入.txt文件导入到Pl*SQL
进入Pl*SQL,选择菜单栏中的工具>文本导入器,进入到文本导入器的页面后,先点击“来自文本文件的数据”选项卡,然后点击打开按钮,选择数据录入.txt文件.在选择之前必须要把相应的Excel文件关闭,否则txt文件无法导入:
(4)此时“文件数据”中会显示:
(5)在“配置”进行配置:
如果不将标题名勾选上,则会导致字段名也当做记录被导入到数据库中,影响正确录入。
说明:由于在Excel中,超过15位的数字后三位会显示为0,需要在输入的数值前输入英文单引号,这样数值就能正常显示了。由于身份证号码是18位的数字,所以其前面有一个单引号,可以通过(4)中的文件数据中看到身份证号码相对应的字段值前面确实有一个单引号,那么在配置中设置字段开始位置时,就应将相对位置设置为1。
(6)“结果预览”中可以看到:
(7)点击“到Oracle中的数据”选项卡:
(8)点击下方的“导入”按钮:
可以看到导入成功。
1 准备Excel导入数据
2 把Excel文件另存为(文本文件(百制表符分隔)(*.txt))
3 把新生成的student.txt文件导入到plsql
打开plsql连接到要导入的oracle数据库再打开Tools --> Text importer... --> Open data file 选择要度导入的txt文件
4 设置导入数据表结构问
新生成的表字段会对应Excel文件第一行标题答,但新生成的表字段Type需要设置,可以设置为nvarchar (导入数据为临时数据,如果需要可以后期版再作类型变换处理)
5 在Data to Oracle Tab中设置导入的表及相应的栏位
6 点击界面下方的Import按钮完成导入操作Excel数据通权过plsql 导入到Oracle