一、从oracle到处数据到excel文件
方法一、直接从PL/SQL中,全选数据,然后复制粘贴到excel中;

方法二、同样是通过PL/SQL,在数据列中,点击右键-->导出结果-->选择csv。因为csv是早期的execel格式,是靠逗号分隔的,保存成csv文件之后,用Excel打开,另存为*.xls文件即可。

二、将excel文件导入到oracle
方法一:使用SQL*Loader  
这个是用的较多的方法,前提必须oracle数据中目的表已经存在。  
大体步骤如下:  
1、将excel文件另存为一个新文件比如文件名为TEST.txt,文件类型选文本文件(制表符分隔),这里选择类型为csv(逗号分隔)也行,但是在写后面的control.ctl控制文件时要将字段终止符改为','(fields   terminated   by   ','),假设将excel文件保存到c盘根目录下,C:\  
2、如果没有存在的表结构,则创建,假设表为test,有两列为id,name。  
3、用记事本创建SQL*Loader控制文件,命名格式:*.ctl。比如命名为control.ctl,内容如下:(--后面的为注释,在实际执行时,这些注释是需要去掉的)

    load   data
  infile 'c:\TEST.txt'
  append into table TEST
  fields terminated by X'09'
  (id,name)

*control.ctl说明:  
    load   data                   --控制文件标识  
    infile   'c:\TEST.txt'               --要输入的数据文件名为TEST.txt   或者infile 'c:\text.csv'
    append   into   table   TEST            --向表test中追加记录  
    fields   terminated   by   X'09'        --字段终止于X'09',是一个制表符(TAB),若为, 则此处改X'09'为','
    (id,name) 

备注:数据导入的方式上例中用的append,有一下几种:insert,为缺省方式,在数据装载开始时要求表为空;append,在表中追加新记录;replace,删除旧记录,替换成新装载的记录;truncate,同replace。

4、在命令行提示符下使用SQL*Loader命令实现数据的输入  
   
C:\>sqlldr   userid=system/manager   control='c:\control.ctl'  
   
---------------------------------------------------------------------------------------------------------------------

方法二   利用PLSQL   Developer

1、用PL/SQLDeveloper导入,PL/SQL Developer是一种专门用于开发、测试、调试和优化oracle PL/SQL存储程序单元,比如触发器,存储过程,函数和程序包等集成开发环境。

在单个文件数据不多(小于10w行),并且目的表结构已经存在的情况下可以使用plsql developer工具将excel内容直接通过简单的copy,paste操作导入oracle数据库。具体操作方式如下:

A. 在plsql developer的sql window里输入select * from test for update,其中test是要导入的oracle数据表名称;

B. 执行查询(通过点击按钮或者快捷键F8可以实现);

C、点击查询结果上面的锁状按钮,使得查询到的内容处于编辑状态。

D、从excel数据表中copy(ctrl +C)要导入oracle中的数据,如果是单列数据导入,可以先按plsql developer中查询结果上面的“添加(+)”按钮,使得数据表处于添加数据状态,然后将鼠标在plsql developer的列名称上单击,最后使用快捷键ctrl + v 完成数据导入操作,并单击plsql developer中的“提交(对号)”按钮提交所做的修改。

E、如果是同时导入所有列,首先选择copy所有数据,然后点增加(+)并点击编辑那一行最前面的星号使得整行数据都处于被选择状态,最后paste即可将数据导入。

F、如果分列导入数据,则需要逐列完成,首先选择copy要导入的数据,然后然后点增加(+)并点击编辑那一列的名称,使得整列数据都处于被选择状态,最后paste即可将数据导入。

使用PLSQL developer执行数据的导入和导出操作主要存在的问题是在大数据量情况下对中文数据可能出错,估计将接收数据表的类型定义为nvarchar2的类型会比较好一点。另外,就是这种方法需要人工更多的参与,不能达到自动导入的效果。

---------------------------------------------------------------------------------------------------------------------

方法三、  使用其它数据转移工具作中转站。  
  我使用的是SQL Server2000。  
  先将excel表导入sqlserver数据库中,然后再从SQL Server导入到oracle中。这两步操作都简单。

有2点注意事项,注意事项:
一是注意excel文件的版本和格式要与导入到SQL Server时的数据源匹配。如果导入到SQL Server时的数据源选Microsoft   Excel 97-2000的话,而excel文件的版本为Micaosoft Excel 5.0/95 工作簿,则有可能出问题。关于如何看Excle文件格式,你打开excel文件,选择另存为,即可看到像Microsoft   Excel   5.0/95   工作簿或者是Microsoft   Office   Excle   工作簿等等其它的保存类型;
 
二就是由SQL Server导入到oracle中时,记得将在oracle中的表名全部用大写。

oracle导入到Excel的更多相关文章

  1. Oracle导入excel数据快速方法

    Oracle导入excel数据快速方法 使用PLSQL  Developer工具,这个可是大名鼎鼎的Oracle  DBA最常使用的工具.    在单个文件不大的情况下(少于100000行),并且目的 ...

  2. oracle 导入Excel数据

      oracle 导入excel数据 CreateTime--2018年1月30日14:58:51 Author:Marydon 通过plsql实现 1.准备工作 Excel中的字段名称,必须和表结构 ...

  3. ASP.NET Core 导入导出Excel xlsx 文件

    ASP.NET Core 使用EPPlus.Core导入导出Excel xlsx 文件,EPPlus.Core支持Excel 2007/2010 xlsx文件导入导出,可以运行在Windows, Li ...

  4. thinkphp导入导出excel表单数据

    在PHP项目经常要导入导出Excel表单. 先去下载PHPExcel类库文件,放到相应位置. 我在thinkphp框架中的位置为ThinkPHP/Library/Org/Util/ 导入 在页面上传e ...

  5. ORACLE导入导出数据dmp

    imp testwms3/isc@TESTGMMC FILE=C:\ZKGL_201407012334.dmp ignore=y fromuser=GMMCZKGL touser=testwms ta ...

  6. 导入导出Excel工具类ExcelUtil

    前言 前段时间做的分布式集成平台项目中,许多模块都用到了导入导出Excel的功能,于是决定封装一个ExcelUtil类,专门用来处理Excel的导入和导出 本项目的持久化层用的是JPA(底层用hibe ...

  7. 如何使用免费控件将Word表格中的数据导入到Excel中

    我通常使用MS Excel来存储和处理大量数据,但有时候经常会碰到一个问题—我需要的数据存储在word表格中,而不是在Excel中,这样处理起来非常麻烦,尤其是在数据比较庞大的时候, 这时我迫切地需要 ...

  8. php中导入导出excel的原理

    在php中我们要经常导入导出excel文件,方便后台管理.那么php导入和导出excel的原理到底是什么呢?excel分为两大版本excel2007(后缀.xlsx).excel2003(后缀.xls ...

  9. 效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】) 转

    效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中[附源代码下载])    本文目录: (一)背景 (二)数据库数据导入到Excel的方法比较   ...

随机推荐

  1. 父子进程间通信模型实现(popen)

    0.FILE *popen(const char *command, const char *type); popen 函数相当于做了以下几件事: 1.创建一个无名管道文件 2. fork() 3.在 ...

  2. 动态LINQ构建(实现等于不等于大于小于,like以及IN)

    首先感谢园子里的“红烧狮子头”,他的工作是本文的基础,引文如下http://www.cnblogs.com/daviddai/archive/2013/03/09/2952087.html,本版本实现 ...

  3. php生成xml的四种方法(转)

    <?xml version="1.0" encoding="utf-8"?> <article> <item> <ti ...

  4. WPF系列

    一.ListView绑定数据源XML //前端代码 1 <Window x:Class="ListView读取XML数据.MainWindow" xmlns="ht ...

  5. easy ui 菜单和按钮(Menu and Button)

    http://www.zi-han.net/case/easyui/menu&button.html

  6. iOS 基础 第一天(0804)

    OC对象的本质就是一个结构体 为什么说是个结构体? 例如:类里面声明了几个成员变量\实例变量(已添加@plublic),外部对象的指针在访问这个变量的时候是这么写的p->a 0804 注意oc的 ...

  7. 【BZOJ 1491】 [NOI2007]社交网络

    Description Input Output 输出文件包括n 行,每行一个实数,精确到小数点后3 位.第i 行的实数表 示结点i 在社交网络中的重要程度. Sample Input 4 4 1 2 ...

  8. 使用NodeJS+AngularJS+MongoDB实现一个Web数据扒取-分析-展示的系统

    说到Web爬虫,Python占了半壁江山.但是Web页面不是Python的强项了,如果需要扒取Web数据,再Mashup出来一个自己的系统,全端JS是个不错的解决方案(其实不用Python扒数据是因为 ...

  9. VARCHAR2转换为CLOB碰到ORA-22858错误

    近日工作中发现有一张表的字段类型建错了,本应是BLOB类型却被别人建成了VARCHAR2(200),修改时oracle却提示“ORA-22858 invalid alteration of datat ...

  10. module_init宏解析 linux驱动的入口函数module_init的加载和释放

    linux驱动的入口函数module_init的加载和释放 http://blog.csdn.net/zhandoushi1982/article/details/4927579 void free_ ...