欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle 10g新特性:利用外部表卸载数据

程序员文章站 2022-05-24 19:45:20
...

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 今天在看Oracle的CONCEPT文档时发现,Oracle的外部表也可以用来卸载数据了。 从10.2中开始,Oracle增加了外部表的一个新的访问驱动:ORACLE_DATAPUMP。而再次之前,只有一个默认的驱动ORACLE_LOADER

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入

  今天在看Oracle的CONCEPT文档时发现,Oracle的外部表也可以用来卸载数据了。

  从10.2中开始,Oracle增加了外部表的一个新的访问驱动:ORACLE_DATAPUMP。而再次之前,只有一个默认的驱动ORACLE_LOADER。

  使用ORACLE_DATAPUMP驱动,带来的一个优点是,可以利用外部表将数据库中的数据卸载到磁盘文件中,而这是10.1及以前版本所无法做到的。

  下面看一个最简单的例子:

 SQL> CREATE TABLE T_EXTERNAL
  2 (
  3 ID,
  4 NAME
  5 )
  6 ORGANIZATION EXTERNAL
  7 (
  8 TYPE ORACLE_DATAPUMP
  9 DEFAULT DIRECTORY D_OUTPUT
  10 LOCATION('TEST.DMP')
  11 )
  12 AS SELECT ROWNUM RN, TNAME
  13 FROM TAB;
  

表已创建。
  在这张外部表创建的同时,在D_OUTPUT所指向的操作系统目录下,生成了一个TEST.DMP二进制文件。
  显示这个二进制文件中的可显示字符:


 $ strings TEST.DMP
  IBMPC/WIN_NT-8.1.0
  ZHS16GBK
  LBB EMB GHC JWD SD EBE WMF DDG JG SJH SRH JGK CL EGM BJM RAP RLP RP KR PAR MS MRS JLS CET HLT
  10.02.00.01.00
  T
  1
  0
  3
  0
  ZHS16GBK
  AL16UTF16
  +00:00
  YANGTK
  T_EXTERNAL
  1
  0
  ID
  2
  22
  0
  -127
  0
  0
  0
  2
  0
  NAME
  1
  30
  0
  0
  852
  1
  30
  T_LOG  TEST_LOB  T_COMPRESS  T_TEMP2  T_RECORD  T_SESSION_STAT  T_TEMP  T_NO_EXISTS_BEFORE  T_CHAR  SYS_EXPORT_SCHEMA_01  T_EXTERNAL  T_LOAD_SPACE  T_LEVEL  T_LEVEL1  CHAINED_ROWS  T_TREE  

[1] [2]

Oracle 10g新特性:利用外部表卸载数据