Oracle外部表(Oracle External Tables)
定义:结构存放在数据字典中,而表数据存放在OS文件中的表。
作用:在数据库中查询OS文件的数据,还可以将OS文件数据装载到数据库中。
区别:在外部表上不能执行DML操作,也不能在外部表上建索引,只能执行select操用。
创建外部表
用户授权
grant create any directory to scott;
建立目录对象
create directory dir_test1 as '/u01/admin/ora10/bdump';
例1:
建立外部表
------------------------------------------------------
create table alert_log
(
text varchar2(400)
)
organization external
(
type oracle_loader
default directory dir_test1
access parameters
(
records
delimited by
newline
nobadfile
nodiscardfile
nologfile
)
location (dir_test1:'alert_ora10.log')
)
reject limit unlimited;
------------------------------------------------------
select * from alert_log;
例2:
创建OS文件
vi /u01/admin/ora10/bdump/test.txt
------------------------------------------------------
7369,SMITH,800,CLERK
7499,ALLEN,1600,SALESMAN
7521,WARD,1250,SALESMAN
7566,JONES,2975,MANAGER
------------------------------------------------------
建立外部表
------------------------------------------------------
create table txt_tab
(
empno number(4),
ename varchar2(10),
sal number,
job varchar2(10)
)
organization external
(
type oracle_loader
default directory dir_test1
access parameters
(
records delimited by newline
fields terminated by ','
)
location (dir_test1:'test.txt')
)
reject limit 0;
------------------------------------------------------
select * from txt_tab;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/17012874/viewspace-693288/ ,如需转载,请注明出处,否则将追究法律责任。