oracle external table 限制,oracle 外部表 external table

第一步:建立路径,并且要保证这个路径可以被oracle读写权限(因为oracle会在这个路径下写外部表的日志和错误的数据)

mkdir /home/oracle/

将需要做外部表的数据(test.txt,test2.txt)放到该目录下,可以放多个

--copy test.txt,test2.txt to /home/oracle/

第二步:dba用户执行,创建directory并且授权给oracle的schema。

create directory test as '/home/oracle/';

grant read on directory test to test1;

grant write on directory test to test1;

--登录teset1,执行用户创建external table

create table resources_ext

(

GMT_CREATE date,

GMT_MODIFIED date,

ID number,

TYPE VARCHAR2(32),

NAME VARCHAR2(256),

VALUE VARCHAR2(256)

) organization external

(type oracle_loader

default directory test

access parameters

(

records delimited by newline

fields terminated by ','

missing field values are null

(

GMT_CREATE date "yyyy-mm-dd hh24:mi:ss"

,GMT_MODIFIED date "yyyy-mm-dd hh24:mi:ss"

,ID

,TYPE

,VALUE

,NAME

)

) location ('test.txt')

);

GMT_CREATE date,

GMT_MODIFIED date,

ID number,

TYPE VARCHAR2(32),

NAME VARCHAR2(256),

VALUE VARCHAR2(256)

这里是指定目标表结构的字段顺序和类型,

GMT_CREATE date "yyyy-mm-dd hh24:mi:ss" ----此处可以直接将文件中的字符直接转化成date型。

,GMT_MODIFIED date "yyyy-mm-dd hh24:mi:ss"

,ID

,TYPE

,VALUE

,NAME

这个是指定那个字段对应文件中的哪一列,他的顺序决定了向表中写数据的顺序。

外部表不能修改和插入。

当外部表建立完成后,可以通过dba_external_tables和dba_external_locations查看相应的信息,

没有创建时是看不到的。

如果有错误,可以在第一步建立的路径中看到有以外部表名字和一串数字命名的日志和错误的数据信息(两个文件),内容很详细基本上可以定位是什么原因。[@more@]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值