Tienes varios problemas aquí. El problema inmediato que causa su problema es que tiene las cláusulas en el orden incorrecto
, pero también tiene MISSING FIELDS
en lugar de MISSING FIELD
:
...
ACCESS PARAMETERS
(
RECORDS DELIMITED BY newline
FIELDS TERMINATED BY ','
MISSING FIELD VALUES ARE NULL
REJECT ROWS WITH ALL NULL FIELDS
(
...
Entonces su contenido de la lista de campos tiene tipos de datos para esa parte de la declaración; puede omitirlo por completo en este caso, ya que coinciden con la definición de la columna de la tabla.
Entonces puedes simplificarlo a:
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')
);