这一篇介绍外部表的卸载功能。


还是上一篇中的测试环境:

SQL> CREATE TABLE T1

 2  (ID NUMBER, NAME VARCHAR2(30));

Table created.

SQL> INSERT INTO T1

 2  SELECT ROWNUM, TNAME      

 3  FROM TAB;

66 rows created.

SQL> CREATE TABLE T2

 2  (ID NUMBER, NAME VARCHAR2(30));

Table created.

SQL> INSERT INTO T2

 2  VALUES (1, 'A');

1 row created.

SQL> INSERT INTO T2

 2  VALUES (2, 'B');

1 row created.

SQL> COMMIT;

Commit complete.

上一篇介绍的方法限制条件太严格,这篇给出的方法基本上没有限制条件,可以满足任何查询结果的导出:

SQL> CREATE TABLE T_RESULT

 2  (

 3  ID,

 4  NAME1,

 5  NAME2

 6  )

 7  ORGANIZATION EXTERNAL

 8  (

 9  TYPE ORACLE_DATAPUMP

10  DEFAULT DIRECTORY D_OUTPUT

11  LOCATION('T_RESULT.DP')

12  )

13  AS SELECT T1.ID, T1.NAME NAME1, T2.NAME NAME2

14  FROM T1, T2

15  WHERE T1.ID = T2.ID;

Table created.

通过建立外部表的方式实现数据泵导出数据。这种方法比先建立一张表,然后利用数据泵导出要方便一些,而且不会占用用户TABLESPACE中的空间。


oracle视频教程请关注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html