ITPub博客

首页 > 数据库 > Oracle > Oracle外部表的管理和应用

Oracle外部表的管理和应用

原创 Oracle 作者:sqysl 时间:2016-06-11 22:35:17 0 删除 编辑

外部表作为oracle的一种表类型,虽然不能像普通库表那么应用方便,但有时在数据迁移或数据加载时,也会带来极大的方便,有时比用sql*loader加载数据来的更为方便,下面就将建立和应用外部表的命令和操作记录如下:

--创建存放文件的directory对象

sqlplus username/passwd@prod

 create directory ex_data as '/home/ex_data/';


--创建外部表

CREATE TABLE tab1_ex
(
  C1 VARCHAR2(32 BYTE),
  C2 VARCHAR2(64 BYTE),
  C3 VARCHAR2(32 BYTE),
  C4 VARCHAR2(255 BYTE),
  C5 VARCHAR2(128 BYTE),
  C6 VARCHAR2(36 BYTE),
  C7 VARCHAR2(64 BYTE),
  C8 VARCHAR2(128 BYTE),
  C9 VARCHAR2(64 BYTE),
  C10 VARCHAR2(64 BYTE),
  C11 VARCHAR2(8 BYTE),
  C12 VARCHAR2(8 BYTE),
  C13 VARCHAR2(8 BYTE),
  C14 VARCHAR2(8 BYTE),
  C15 VARCHAR2(8 BYTE),
  C16 VARCHAR2(8 BYTE),
  C17 VARCHAR2(8 BYTE),
  C18 VARCHAR2(8 BYTE),
  C19 VARCHAR2(8 BYTE),
  C20 VARCHAR2(32 BYTE),
  C21 VARCHAR2(8 BYTE),
  C22 VARCHAR2(8 BYTE)
)
ORGANIZATION EXTERNAL
  (  TYPE ORACLE_LOADER
     DEFAULT DIRECTORY ex_data
     ACCESS PARAMETERS 
       ( records delimited by newline
         fields terminated by '|'
    )
     LOCATION (ex_data:'tab1_ex.txt')
  );

--应用外部表

select count(*) from tab1_ex;


--注:

1.虽然外部表可以和普通库表一样查询,但不可以在上面你的列上建立索引;

2.也不可以insert into数据到外部表内;

3.也不可以update和delete外部表内的数据;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8484829/viewspace-2118675/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
大学毕业至今,一直深耕于数据库领域20余载,擅长数据库优化、数据库分析诊断、数据库规划设计等,曾任职多家知名大型企业,多次独立承担并成功上线关键大型项目。

注册时间:2008-06-27

  • 博文量
    365
  • 访问量
    725315