外部表概述:
外部表在Oracle9i Release1中首先引入。
简单地说,利用外部表,我们可以把一个操作系统文件当成是一个只读的数据库表。建立好一个外部表之后,我们就可以使用SELECT 语句访问外部表,而间接地访问与外部表对应的操作系统文件中的数据。
使用外部表的限制:
1、Oracle 9i 以上数据库版本
2、被访问的文件必须在数据库服务器上
3、不支持LOB类型
4、不能对外部表进行增删改操作,外部表是只读表
5、外部表上也不能建立索引
外部表简单实例:
第一步:创建一个目录
create directory d_test as ‘d:\d_test';
(注意这里并没有创建一个实际的文件夹(只是一个映射),并且当对应文件夹不存在时,也能创建成功并不报错。)
第二步:创建一个与目录对应的文件夹,并在其中创建test1.txt与test2.txt两个文件,文件内容如下:
test1.txt:
1,外部表测试一,2009-3-6 10:07:27
test2.txt:
2,外部表测试二,2009-3-6 11:07:27
第三步:创建外部表
CREATE TABLE ex_test(
id NUMBER(20),
content VARCHAR2(60),
in_date DATE)
ORGANIZATION EXTERNAL (
TYPE oracle_loader
DEFAULT DIRECTORY d_test
ACCESS PARAMETERS (--该参数部分,描述了如何处理对应的文件)
FIELDS TERMINATED BY ','
MISSING FIELD VALUES ARE NULL
(ID,
content ,
in_date DATE "YYYY-MM-DD HH24:MI:SS"
))
LOCATION ('test1.txt','test2.txt'));
外部表的用途:
外部表的主要用途是作为数据源,以便将其中的数据加载到实际的数据库表中。当用户创建了外部表后,就可以在create table as select 或insert into…as select的select子句中使用外表部了。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10595277/viewspace-563137/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10595277/viewspace-563137/