组织外部错误ORA-29913 ODCIEXTTABLEOPEN

问题描述

我正在Oracle中创建外部表,如下所示:

create or REPLACE directory PATH_ENTITY as 'C:\001Billing\loadFiles';
create table DWH_TABLE (
    SECUENCIA VARCHAR2(150),CAMPO2 VARCHAR2(150)
)
ORGANIZATION EXTERNAL 
( type oracle_loader 
  default directory PATH_ENTITY 
  access parameters 
  ( fields terminated by ''|''
    missing field values are null
  ) 
  location ('textfile.txt') 
);

文本文件内容

20200820090816024009|20200820090816023905

当我阅读表格时,出现以下错误

select * from DWH_TABLE;

Error ORA-29913 ODCIEXTTABLEOPEN

Oracle版本

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE    11.2.0.1.0  Production
TNS for 64-bit Windows: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production

解决方法

正如错误消息所述-单引号字符串存在问题

替换无效的带引号的字符串

 fields terminated by ''|''

使用

 fields terminated by '|'
,

我怀疑您创建的目录上的当前用户缺少必要的授予,

您能否根据需要提供usernameread的赠款(将write替换为您的实际用户,然后尝试尝试,

grant read on directory path_entity to username;
grant write on directory path_entity to username;

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...