Oracle
 sql >> база данни >  >> RDS >> Oracle

ORA-29913:грешка при изпълнение на извикване на ODCIEXTTABLEOPEN

Тук имате няколко проблема. Непосредственият, който причинява проблема ви, е, че имате клаузите в грешен ред , но също така имате MISSING FIELDS вместо MISSING FIELD :

...
 ACCESS PARAMETERS
 (
  RECORDS DELIMITED BY newline
  FIELDS TERMINATED BY ',' 
  MISSING FIELD VALUES ARE NULL
  REJECT ROWS WITH ALL NULL FIELDS
  (
...

След това вашият съдържание на списък с полета имат невалиден типове данни за тази част от изявлението; можете просто да пропуснете това изцяло в този случай, тъй като те съответстват на дефиницията на колоната в таблицата.

Така че можете да го опростите до:

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')
);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Динамичен SQL - Проверете синтаксиса и семантиката

  2. може да не-уникален индекс избягва дублирането на записи

  3. Как да използвате клауза за групово събиране с оператор SELECT INTO в базата данни на Oracle

  4. Как да вмъкнете UUID в колона RAW(16).

  5. Как да опиша проблема с производителността в релационна база данни?