前几天有个朋友在MSN上问,如何能更快速的从数据库中卸载和加载数据,他原来是用sql查询spool出来,效率很低。

这让我想起DCBA的一个工具ociuldr,这个工具是用C写成的,通过OCI和数据库交互,方便而且效率很高。

通过ociuldr转储的数据,可以很容易用sqlldr加载入数据库,两者结合使用,效果非凡。

我简单测试了一下,转储很简单:

D:\\OraDoc\\OracleTools\\ociuldr>ociuldr user=scott/tiger@eygle2 query="select * from emp" field=# record=0x0a file=emp.txt

0 rows exported at 2007-02-27 15:47:48

14 rows exported at 2007-02-27 15:47:48

output file emp.txt closed at 14 rows.

创建好测试表:

D:\\OraDoc\\OracleTools\\ociuldr>sqlplus scott/tiger@eygle2

SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 2月 27 15:53:40 2007

Copyright (c) 1982, 2005, Oracle. All rights reserved.

连接到:

Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production

With the Partitioning option

JServer Release 9.2.0.4.0 - Production

SQL> create table empt as select * from emp where 1=0;

表已创建。

编写简单的控制文件,通过sqlldr轻松加载入数据库:

D:\\OraDoc\\OracleTools\\ociuldr>cat a.ctl

LOAD DATA

INFILE 'emp.txt'

INTO TABLE empt

APPEND

FIELDS TERMINATED BY '#' TRAILING NULLCOLS

(

EMPNO ,

ENAME CHAR ,

JOB CHAR ,

MGR ,

HIREDATE DATE ,

SAL ,

COMM ,

DEPTNO

)

D:\\OraDoc\\OracleTools\\ociuldr>sqlldr scott/tiger@eygle2 control=a.ctl

SQL*Loader: Release 10.2.0.1.0 - Production on 星期二 2月 27 16:01:24 2007

Copyright (c) 1982, 2005, Oracle. All rights reserved.

达到提交点 - 逻辑记录计数 14

D:\\OraDoc\\OracleTools\\ociuldr>sqlplus scott/tiger@eygle2

SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 2月 27 16:01:37 2007

Copyright (c) 1982, 2005, Oracle. All rights reserved.

连接到:

Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production

With the Partitioning option

JServer Release 9.2.0.4.0 - Production

SQL> set linesize 120

SQL> select * from empt;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

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

7369 SMITH CLERK 7902 17-12月-80 800 20

7499 ALLEN SALESMAN 7698 20-2月 -81 1600 300 30

7521 WARD SALESMAN 7698 22-2月 -81 1250 500 30

7566 JONES MANAGER 7839 02-4月 -81 2975 20

7654 MARTIN SALESMAN 7698 28-9月 -81 1250 1400 30

7698 BLAKE MANAGER 7839 01-5月 -81 2850 30

7782 CLARK MANAGER 7839 09-6月 -81 2450 10

7788 SCOTT ANALYST 7566 19-4月 -87 3000 20

7839 KING PRESIDENT 17-11月-81 5000 10

7844 TURNER SALESMAN 7698 08-9月 -81 1500 0 30

7876 ADAMS CLERK 7788 23-5月 -87 1100 20

7900 JAMES CLERK 7698 03-12月-81 950 30

7902 FORD ANALYST 7566 03-12月-81 3000 20

7934 MILLER CLERK 7782 23-1月 -82 1300 10

已选择14行。

SQL>

dcba说将在下一版增加自动控制文件生成的功能,那时候这个工具将会更加方便了。

-The End-

oracle中spool卸数,Oracle中如何快速的卸载和加载数据?相关推荐

  1. oracle中spool卸数,数据卸载--spool的使用

     引言 在项目中,我们经常会遇到数据的卸载.装载需求. 卸载就是需要将数据从数据库中导入到文本文件中的需求,这样的方法有很多,比较常用的就是spool命令. 装载就是需要将数据从文本文件中导入到数 ...

  2. oracle数据库中spool的作用,Oracle中Spool命令如何使用 Oracle中Spool命令使用方法

    Oracle中Spool命令如何使用?本篇文章小编给大家分享一下Oracle中Spool命令使用方法,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 方法/步骤 首先需要明白 ...

  3. oracle查询最大并发数,oracle最大并发数查看

    查看oracle的最大并发数限制,可是查看v$license视图 v$license视图: 里面记录了Oracle最大的并发数以及当前用户的连接数, 官方文档有如下描述: This view cont ...

  4. oracle 动态游标行数,oracle动态游标的简单实现方法

    下面就是例子程序 --明细表打印予处理  通用报表: procedure mx_print_common(pd_id in mx_pd_syn.pd_id%type, p_pd_mxb_id IN m ...

  5. java中对象字节数_JAVA中求解对象所占字节大小

    该类为cache4j缓存框架中的工具类方法,该方法实现了两个接口 接口1:计算对象在内存中所占字节数 接口2:复制对象,实现深度克隆效果,实现原理为先序列化对象,然后在反序列化对象:返回一个新的对象, ...

  6. oracle表最大条数,oracle 数据表最大多少条记录

    1.64位linux 和64位oracle,默认oracle表空间数据文件用的BLOCKSIZE是8k,表空间数据文件最大是32G. SQL>show parameter k_cache_siz ...

  7. oracle查询sql记录数,oracle查询所有表的记录数SQL

    查询用户所有表的总记录数, 并按总记录数进行排序. 1.创建函数 Sql代码 create or replace function count_rows(table_name in varchar2, ...

  8. java中echat如何动态_ECharts Java 动态加载数据,echartsjava

    1.前台jsp页面 pageEncoding="UTF-8"%> html PUBLIC "-//W3C//DTD HTML 4.01 Transitional// ...

  9. java中echat如何动态_ECharts Java 动态加载数据

    1.前台JSP页面ECharts// 配置路径require.config({paths: {echarts: ${ctx}/plugins/echarts- 1.前台JSP页面 pageEncodi ...

最新文章

  1. python软件界面-用Html来写Python桌面软件的UI界面-htmlPy
  2. 大数的菲波那契计算/Huge Fibonacci Numbers - ACM
  3. 看样子还是:JSP和JAVA
  4. 博睿数据与阿里云签订云原生核心合作伙伴计划,推动企业智能运维落地
  5. .NET 6 Preview 1 开箱,带你体验新版本
  6. ​三位中国科学家与诺贝尔物理奖的擦肩而过
  7. 在 CSS 中,width 和 height 指的是内容区域的宽度和高度
  8. android 字体像素转换工具类_android px,dp,sp大小转换工具
  9. Java获得不同格式的系统时间
  10. 读博天赋更重要还是努力更重要?
  11. BOMRemover v2.0 去除代码中的UTF-8 BOM
  12. 通过高德地图api获取地点坐标(以查询物资点为例)
  13. Python基础:什么是字符串?字符串是用来做什么的?
  14. 六大iT公司的组织结构
  15. 2022年8月11日:使用 ASP.NET Core 为初学者构建 Web 应用程序--使用 ASP.NET Core 控制器创建 Web API(没看懂,需要再看一遍)
  16. 大神李沐被曝离职,投身大模型创业!网友:希望不要耽误他解读论文
  17. 方格取数(多线程dp,深搜)
  18. 在输入框加入搜索图标的问题
  19. 一文搞懂业务中台、数据中台、AI中台区别及联系
  20. 记2013移动开发者大会之行

热门文章

  1. 移动端placeholder不能垂直居中解决方案
  2. 解决idea控制台打印乱码问题
  3. MVC Filter自定义异常(拦截)
  4. 使用命令导入sql文件到mysql数据库时报Failed to open file错误的解决方案
  5. 使用NPOI时ICSharpCode.SharpZipLib版本冲突问题解决
  6. vs2015第二次装安装不能选择路径问题解决方法
  7. windows 10 上office2016 word崩溃的解决方案
  8. java.lang.IllegalStateException: Failed to load ApplicationContext,这个异常的解决方案
  9. 禁用引导模态区域之外的单击以关闭模态
  10. iOS 跳转App的二三事