工作当中经常会遇到需要读取操作系统层面的某些数据,一种方法就是通过sqlldr直接导入到数据库进行操作,还有一种方法就是通过oracle的外部表来实现,具体如下:
create directory EXT_TABLE_DIR as '/home/oracle/';
grant read,write on directory EXT_TABLE_DIR to mynet_app;
select * from dba_directories
create table EXT_TABLE_NAME
(
member_id NUMBER,
conclusion VARCHAR2(512),
cdate VARCHAR2(512)
)
organization external
(
type oracle_loader
default directory EXT_TABLE_DIR
access parameters ( fields terminated by '|' )
location ('extdata.txt')
)
reject limit unlimited
select * from DBA_EXTERNAL_LOCATIONS;
select * from DBA_EXTERNAL_TABLES;
select count(9) from mynet_app.EXT_TABLE_NAME;
当然EXT_TABLE_DIR 目录下得有你需要的文件,格式与上面创建的外部表要一致。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25618347/viewspace-714070/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/25618347/viewspace-714070/