`
dupeng_1979
  • 浏览: 14855 次
  • 性别: Icon_minigender_1
  • 来自: 长春
文章分类
社区版块
存档分类
最新评论

excel表格导入oracle数据库

阅读更多
摘要:在程序编制过程和数据汇总交换过程中,经常会碰到需要将其他人员在office办公环境下编制的文件数据内容导入oracle中的情况。 目前程序开发者经常使用的方法有如下几种:1,使用oracle提供的导入工具sql*loader;2,使用plsql developer工具;3使用其他数据转移工具做中转站。下面我们采用实例的方式分别描述几种导入方式的优缺点及其操作步骤。假设 ‘e:\test.xls’文件中存在三列数据分别代表客户编号,客户名称和联系电话。其内容如下:10001 zjaxi01 13562485246
10002 zjaxi02 13562485247
10003 zjaxi03 13562485248
10004 zjaxi04 13562485249
10005 zjaxi05 13562485250
10006 zjaxi06 13562485251
10007 zjaxi07 13562485252
10008 zjaxi08 13562485253
10009 zjaxi09 13562485254
10010 zjaxi10 13562485255
10011 zjaxi11 13562485256
10012 zjaxi12 13562485257
10013 zjaxi13 13562485258
10014 zjaxi14 13562485259


使用sql *loader SQL*LOADER是oracle的数据加载工具,在NT下sql*loader的 命令为SQLLDR,在UNIX下一般为SQLLDR/SQLLOAD。通常用来将操作系统文件迁移到oracle数据库中。它是大型数据仓库选择使用的 加载方法,因为它提供了最快速的途径(direct,parallel)。但这种方法要求存储数据的oracle表是已经存在的。使用这种方法导入excel内容到oracle时,首先需要将excel文件另存为文本格式,文件类型选文本类型或者csv类型即将e:\test.xls另存为e:\test.csv。如果oracle没有对应存储数据的表结构,则需要创建表test(id,name,telphone)。用记事本创建sql*loader控制文件test.ctl(ctl后缀是企图证明这是一个控制文件,但实际上这个文件后缀不重要,用户可以自由选择,但文件格式一定要是文本格式),内容如下:Load dataInfile ‘e:\test.csv’          --数据源文件名称Append|insert|replace       --append在表后追加,insert插入空表,replace替代原有内容Into table test            --要导入的数据库表名称[when id = id_memo]     --过滤条件Fields terminated by X’09’ --字段分隔符(id,name,telphone)        --字段名称列表最后在命令窗口输入sqlldr命令行执行导入操作Sqlldr userid = system/manager control=’e:\test.ctl’Sqlldr的函数关键字说明:Userid   --oracle用户名 userid = username/passwordControl --控制文件名称 control = ‘e:\insert.ctl’Log     –-日志文件名称 log = ‘e:\insert.log’Bad     --损坏文件名称Data     --data file nameDiscard    --discard file nameDiscardmax --number of discards to allow(默认全部)Skip       --导入时跳过的记录行数(默认0)Load       --导入时导入的记录行数(默认全部)Errors    --允许错误的记录行数(默认50)


使用plsql developer PL/SQL Developer是一种专门用于开发、测试、调试和优化oracle PL/SQL存储程序单元,比如触发器,存储过程,函数和程序包等集成开发环境。在单个文件数据不多(小于10w行),并且目的表结构已经存在的情况下可以使用plsql developer工具将excel内容直接通过简单的copy,paste操作导入oracle数据库。具体操作方式如下:l         在plsql developer的sql window里输入select * from test for update,其中test是要导入的oracle数据表名称;l         执行查询(通过点击按钮或者快捷键F8可以实现);l         点击查询结果上面的锁状按钮,使得查询到的内容处于编辑状态。l         从 excel数据表中copy(ctrl +C)要导入oracle中的数据,如果是单列数据导入,可以先按plsql developer中查询结果上面的“添加(+)”按钮,使得数据表处于添加数据状态,然后将鼠标在plsql developer的列名称上单击,最后使用快捷键ctrl + v 完成数据导入操作,并单击plsql developer中的“提交(对号)”按钮提交所做的修改。l         如果是同时导入所有列,首先选择copy所有数据,然后点增加(+)并点击编辑那一行最前面的星号使得整行数据都处于被选择状态,最后paste即可将数据导入。l         如果分列导入数据,则需要逐列完成,首先选择copy要导入的数据,然后然后点增加(+)并点击编辑那一列的名称,使得整列数据都处于被选择状态,最后paste即可将数据导入。使用PLSQL developer执行数据的导入和导出操作主要存在的问题是在大数据量情况下对中文数据可能出错,估计将接收数据表的类型定义为nvarchar2的类型会比较好一点。另外,就是这种方法需要人工更多的参与,不能达到自动导入的效果。


使用sql server中转    这部操作执行时,需要先用sqlserver的导入导出工具将excel内容导入sqlserver数据库 中,然后使用同样的工具将sqlserver中转内容导入oracle数据库,这里需要两次的数据复制与IO操作,效率相对是比较低的。并且根据csdn 网友jkflyfox的描述,这种方式下需要将oracle文件的名称全部大写,否则会出错。
分享到:
评论

相关推荐

    导入Excel表格插入Oracle数据库

    文档分为2部分,前台JS主要调用导入Excel表格页面的jQuery语句和导入Excel表格页面。后台主要是获取Excel中数据和根据获取的数据处理业务

    PL/SQL将EXCEL数据导入到ORACLE数据库

    如何用PL/SQL将EXCEL数据导入到ORACLE数据库中,截图教大家。

    Excel导入Oracle数据库关键代码

    虽然不全面,但是是一个很容易看懂的代码,还有很大的扩展性。

    c#批量导入excel数据到oracle数据库.rar

    自己整理的利用c#写的excel数据导入到oracle11G数据库,100%可用,里面包含程序demo和excel表格、建表的sql,需要学习和借鉴的朋友可以下载。

    C#Excel大量数据快速导入数据库

    C#Excel大量数据快速导入数据库.

    Excel树形结构数据导入Oracle数据库(Java)

    NULL 博文链接:https://hahawowo.iteye.com/blog/783874

    利用plsql把excel的数据批量导入oracle数据库的顺序.docx

    利用plsql把excel的数据批量导入oracle数据库的顺序

    NET Excel导入数据库及常见问题

    .NET Excel导入数据库(Sqlserver/Oracle)及常见问题

    利用java导入导出excel到oracle数据库的POI的jar文件包

    利用java导入导出excel到oracle数据库需要用到的jar包 用到的JAR包如下(可以直接到POI官网上下载也可以在文章的附件中下载): poi-3.9-20121203.jar poi-ooxml-3.9-20121203.jar poi-ooxml-schemas-3.9-20121203....

    VC 实现Excel数据批量上载到Oracle数据库中

    此程序在VC++2003.net中实现了将Excel表格数据批量上载到Oracle数据表中,程序中连接数据库的方式为OO4O

    Excel Join Tool 电子表格 excel 数据库导入导出工具 功能介绍

    Excel Join Tool 电子表格 excel 数据库导入导出工具 简明教程 共有6个版本,分别对应:Oracle、SQL Server、Postgres、MySQL/MariaDB、SQLite、Access。 https://OdinSoft.taobao.com

    根据excel文件生成oracle表,并导入数据

    该程序根据Excel文件的第一个Sheet页内容,生成数据库表,并将数据导入生成的表中; 操作说明:1>:输入数据库相关信息,登陆数据库; 2>:选择Excel文档,输入设置信息,创建数据库表结构; 3>:点击导入数据按钮...

    使用工具 plsqldev将Excel导入Oracle数据库

    2、打开需导入的excel表格,单击office按钮,选择另存为–其他格式, 选择保存类型CSV(逗号分隔)(*.csv),单击保存 3、打开plsqldev 在工具栏中选择Tools下拉菜单下的Text Importer。进入后选择data from text...

    XlsToOra v1.5.4.31(excel导入oracle工具)

    XlsToOra v1.5.4.31。本软件来自互联网,经处理后无需注册,测试无任何限制。可以用来将excle表格数据直接导入oracle数据库中。对不熟悉数据库的人员上传提交数据,有极大的方便性。

    导入Excel数据到Oracle数据库的脚本

    在cmd运行窗口中输入:sqlldr ...  customermanager/123@orcl是连接数据库,用户名/密码@服务名  control控制命令 后接控制文本的地址  log 定义日志文件的存放  skip跳过前几行,因为文件第一行是表头,因

    Excel导入oracle的几种方法

    方法一、使用SQL*Loader这个是用的较多的方法,前提必须oracle数据中目的表已经存在。大体步骤如下:1、将excel文件另存为一个新文件比如文件名为text.txt,文件类型选文本文件(制表符分隔),这里选择类型为csv...

    Excel数据的导入、导出及更新操作

    * 标 题:Excel表格内容导入导出,目前支持SqlServer和Oracle数据库两种版本,可以任意扩展 * 功能描述: * 可以自定义Excel内容,定义方法参见"字段功能规则.doc",样例为“船舶基本信息.xls” * 支持数据插入...

    vb 导入到Excel

    数据是通过连接oracle数据库,获取的某个表的数据 第一种是传统的从表格导入,这种导入方法存在弊端,如果数据量大,则效率很低 第二种是通过sql查询需要导入的数据,然后直接从数据库导入,这种导入方法基本是秒...

    数据导入导出1.1

    SQL Server,MySQL在开发中)中的数据直接导出到打开的任意表格中(支持MS Excel和WPS表格),也可以从任意打开表格中将数据导入到数据库中,还可以将变更前的数据先保存到XML中,数据变化后,可以变化的数据导出到...

    C# Oracle批量插入数据进度条的实现代码

    由于项目需求,需要将Excel中的数据进过一定转换导入仅Oracle数据库中。考虑到当Excel数据量较大时,循环Insert语句效率太低,故采用批量插入的方法。在插入操作运行时,会造成系统短暂的“卡死”现象。为了让用户...

Global site tag (gtag.js) - Google Analytics