【问题标题】:Loading data in external table SQLLoader在外部表 SQLLoader 中加载数据
【发布时间】:2017-10-24 02:12:55
【问题描述】:

我想根据数据文件创建外部表,但出现错误。我使用空格来分隔我的记录,但这不起作用。是的,我创建了目录并授予了读写权限,而不是创建了外部表。但是,当我选择它时,我得到了一个错误:

ORA-29913:执行 ODCIEXTTABLEOPEN 标注时出错
ORA-29400: 数据磁带错误

我的外部表是:

create table nflteams_ext ( 
ACR varchar2(4),
NAME varchar2(20))
organization external 
(
type oracle_loader
default directory ext_tab_data
access parameters (
records delimited by newline  CHARACTERSET US7ASCII
fields terminated by whitespace 
missing field values are null
(ACR varchar2(4),
NAME varchar2(20)) 
)
LOCATION ('NFL_Teams.dat')
) 
REJECT LIMIT UNLIMITED NOPARALLEL;


data file:

 NO     New Orleans Saints 
 PIT    Pittsburgh Steelers 
 IND    Indianapolis Colts 

【问题讨论】:

    标签: oracle external sql-loader


    【解决方案1】:

    问题解决了。我在外部 tablecreation 的下部使用 char 而不是 varchar2 也用 '/n' 分隔。

     CREATE TABLE nflteams_ext
        (acr   VARCHAR2( 4),
        name  VARCHAR2(20))
        ORGANIZATION EXTERNAL
        (TYPE ORACLE_LOADER
        DEFAULT DIRECTORY ext_tab_data
        ACCESS PARAMETERS
          (RECORDS DELIMITED BY NEWLINE CHARACTERSET US7ASCII
           FIELDS TERMINATED BY WHITESPACE
       MISSING FIELD VALUES ARE NULL
         (acr   CHAR( 4),
          name  CHAR(20) TERMINATED BY '/n'))
    LOCATION ('NFL_Teams.dat'))
    REJECT LIMIT UNLIMITED
    

    不平行 /

    SELECT * FROM nflteams_ext
    

    2 /

    ACR 名称


    没有新奥尔良圣徒队 PIT 匹兹堡钢人队 IND印第安纳波利斯小马队

    已选择 3 行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多