Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

ORA-29913:erro ao executar callout ODCIEXTTABLEOPEN


Você tem vários problemas aqui. A causa imediata do problema é que você tem as cláusulas na ordem errada , mas você também tem MISSING FIELDS em vez de MISSING FIELD :
...
 ACCESS PARAMETERS
 (
  RECORDS DELIMITED BY newline
  FIELDS TERMINATED BY ',' 
  MISSING FIELD VALUES ARE NULL
  REJECT ROWS WITH ALL NULL FIELDS
  (
...

Em seguida, seu conteúdo da lista de campos tem tipos de dados para essa parte da declaração; você pode simplesmente omitir isso inteiramente neste caso, pois eles correspondem à definição da coluna da tabela.

Então você pode simplificar para:
create table strecords (
st_id number(4),
st_name varchar(10),
schl_name varchar(5),
st_city varchar(15),
st_year number(4)
)
ORGANIZATION EXTERNAL
(TYPE oracle_loader
 DEFAULT DIRECTORY ex_tab
 ACCESS PARAMETERS
 (
  RECORDS DELIMITED BY newline
  FIELDS TERMINATED BY ',' 
  MISSING FIELD VALUES ARE NULL
  REJECT ROWS WITH ALL NULL FIELDS
 )
 LOCATION ('strecords.txt')
);