这里是将几个医院的所有医生信息,填写入Excel后,导入到Oracle。当然,oracle不能直接读取Excel的内容,但我们可以转弯来实现。
可以简单的认为,Excel表中的内容一一对应于数据库中一个表的字段,一一插入即可。实际当中可能不会这么简单,但原理一样,如果有关联表,需要插入后生成的字段id,则设置为主键,
利用索引,获取当前值即可继续操作;原理一样。
如果你的团队也是分工协作的,Excel里面的格式如下所示:
每一行为一个医生的信息。如果你的团队也是分工协作的,那将这个格式给相应的人员,让他们将数据录入其中即可。我们开始考虑怎么让他们导入表中。
导入表,无非是一系列的insert语句,每条语句中的数据为Excel中的每一行数据。所以我们需要将Excel中的数据导出到一个文件中,每个医生的资料为一行,各个资料之间用一个标示符隔开,
可以很容易的得到每个医生、每个对应项中的值。
Excel中自带有很多导出方式。其中可以到处xml格式的数据,如果你有专门的工具可以读取,或者自写一个读取此xml格式的程序,也可以。注意的是,转为xml格式后,比如“医生传真”这项
没有值,在xml结点树中则无此项;也可以导出为.txt格式的文件,但导出后保留了原有格式的样子,利用制表符,我们无法很轻松的获得每项数据。最好是我们可以指定导出时每项之间的间隔
标示符。所以我们想到了Access。
微软的产品,相互之间导入导出是完全没有问题的。将Excel的数据导入Access中(Access中“打开”),在Access中是以外部链接表的形式打开的。这时不能在Access中修改数据,只能在对应链接的Excel中修改,
修改后,Access中的数据也会相应的改变。检查Access中的数据无问题,则准备从Access中将数据导出。
在外部链接表上单击右键,选择“导出”,选择好保持目录,选择“文本文件”,下一步;
选择导出格式,为了便于读取各项值,当然选择“带分隔符”,下一步;
选择分隔符,如果你要导入的数据中数据不多,不杂,可以选择分号或者逗号,但我要到的数据中包含文本,可能会有逗号等,所以我选“其他”,选择一个不常用的,如"#";文本标示符可以去掉,我们在生成
批量sql语句时可以自己手动控制添加,下一步;
确定导出即可。
导出的数据如下所示:
到了这个时候,在读取数据已经不难。定位该.txt文件,利用文件流一行一行的读取,读取后根据"#"分开,分别对应到insert语句中的每一个字段,批量导入的工作就算完成了。
其中有个很重要的问题就是,如果利用java的IO流直接从文件中读取后,中文全为乱码。我们需要转换文件编码格式。利用newstr = new String(oldstr.getBytes("ISO-8859-1"), "GBK");转化为GBK格式
即可正常使用了。
当然,做就做的完美点。中间或许有些对应项为空等,如果要加判定的加上;要读取图片的,读取图片后记录位置。Excel中原有存数字的位置,从Access中导出来后,每个都变为X.00了,这时如果数据库中的
字段为number(n)型,则数据导入会出错。所以这个也需要处理掉。等等等等。这些都是简单的工作了,有了这个思路,剩余的一切都很简单。
分享到:
相关推荐
"OraExcel excel连接oracle插件 批量插入"这个主题聚焦在如何通过OraExcel插件实现Excel与Oracle数据库之间的高效交互,特别是批量数据插入的功能。 OraExcel插件是一款专门设计用于简化Excel与Oracle数据库间数据...
在IT行业中,将Excel数据插入Oracle数据库是一...通过上述方式,你可以将任意EXCEL格式的数据批量导入到Oracle数据库,实现数据的有效管理和利用。理解并熟练掌握这些方法,对提升工作效率和数据处理能力具有重要意义。
本示例涉及的是使用VC++2003 .NET环境实现Excel数据的批量上载到Oracle数据库的过程,主要利用了Oracle Object for OLE (OO4O)技术。以下是对这个过程的详细阐述: 首先,`VC++2003 .NET`是Microsoft的Visual C++的...
本文将详细阐述如何利用PL/SQL Developer工具将Excel中的数据批量导入到Oracle数据库,以及如何处理遇到的问题。 首先,准备工作至关重要。你需要确保拥有一个包含待导入数据的Excel文档,并且在Oracle数据库中已经...
- 数据插入:使用OracleCommand对象,可以构建SQL插入语句,将Excel数据批量或逐条插入到Oracle表中。 3. **数据迁移流程**: - 打开Excel文件,读取数据。 - 预处理数据,如转换数据类型,处理空值,验证数据...
3. **数据库连接**:Excel还可以与SQL Server、Oracle等数据库建立连接,实时导入数据。通过ODBC(Open Database Connectivity)或ADO.NET(ActiveX Data Objects .NET),可以定期更新数据库中的数据到Excel工作表...
总的来说,这个自编的小工具利用C#和Oracle数据库驱动实现了便捷的数据迁移,解决了在Excel和Oracle之间批量操作数据的问题,减少了手动操作的时间和错误率,对于需要处理大量数据的企业或个人来说非常实用。...
在C#中高效地将Excel数据导入Oracle数据库通常涉及到几个关键步骤,包括使用COM组件读取Excel、转换数据格式、创建表结构以及利用Oracle的SQL*Loader工具。以下是对这个方法的详细说明: 首先,我们需要引入必要的...
综上所述,通过C#,我们可以利用NPOI读取Excel数据,根据文件内容动态创建Oracle表结构,并使用ODP.NET将数据批量插入到Oracle数据库中。这样的操作流程在数据迁移、数据处理和ETL(提取、转换、加载)任务中非常...
- 利用PL/SQL编程:编写存储过程或包,通过BULK COLLECT和FORALL语句批量插入数据,可以提高效率。 - 数据库连接工具提供的向导:SQL Developer等工具通常提供图形化的导入向导,简化了操作流程。 4. 执行导入:...
SQL*Loader是Oracle提供的一款批量数据加载工具,它支持多种格式的数据文件,包括文本文件、二进制文件等,并能够高效地将这些文件中的数据导入到Oracle数据库中。SQL*Loader支持多种操作模式,如直接路径、外部表等...
3. **利用工具或编程**:有多种方式可将Excel数据导入Oracle,包括使用Oracle SQL Developer、PL/SQL Developer等图形界面工具,或者通过编写SQL*Loader、外部表等脚本进行批量导入。这些工具通常允许设置列映射,...
本知识点将详细介绍如何利用Excel批量导入数据到Oracle 10g数据库,以及可能涉及的相关技术。 首先,我们需要了解Excel的数据读取方式。在Python编程语言中,我们可以使用pandas库来高效地处理Excel文件。pandas...
当我们面对大量结构化数据,例如Excel表格,需要将其导入到关系型数据库如Oracle时,通常会利用编程语言如Java来实现自动化处理。这篇博客“Excel树形结构数据导入Oracle数据库”提供了一个解决方案,下面将详细解析...
这一过程涉及到的关键技术包括:使用JDBC连接Oracle数据库、利用ODBC连接Excel文件、以及通过Java代码读取Excel数据并将其插入到Oracle数据库中。此外,我们还将探讨在Web应用环境中部署此类功能的方法。 #### 技术...
本文将详细讲解如何利用C#实现Excel数据的高效导入。 首先,我们需要了解如何在C#中读取Excel文件。.NET Framework提供了Microsoft.Office.Interop.Excel库,这是一个COM互操作接口,允许我们直接操作Excel对象模型...
3. **使用SQL Loader**:Oracle提供了一个名为SQL*Loader的工具,可以将文本文件(如CSV或Excel文件)的数据批量导入到数据库中。不过,由于Excel文件通常需要先转换为CSV格式,所以你可能需要借助其他工具(如...
Excel导入Oracle工具是一款高效实用的软件,专门设计用于将Excel数据批量导入到Oracle数据库中。在许多业务场景中,我们经常需要处理大量的表格数据,而Excel作为常用的电子表格工具,其方便的数据编辑和管理功能...
本主题涉及的是利用C#实现Excel数据导入到Oracle数据库的源代码实践。这是一项常见的任务,尤其是在数据处理、报表生成或数据分析的场景中。 首先,我们需要理解C#如何与Excel交互。在C#中,可以使用Microsoft....
在Oracle数据库管理中,自动导入数据是一项常见的任务,特别是在处理大量结构化数据时,例如从Excel表格批量导入数据。Oracle提供了多种工具和技术来实现这一功能,使得数据迁移和整合变得更加高效。下面我们将深入...