Ошибка SQL * Loader при выполнении из сценария оболочки - PullRequest
0 голосов
/ 25 сентября 2018

Получение ошибки

LRM-00116: синтаксическая ошибка в ')' после ')'

при выполнении приведенного ниже оператора SQL * Loader из сценария оболочки.Однако, если я выполняю тот же единственный оператор, что и аргумент командной строки, он работает нормально.

Не могли бы вы помочь разобраться в этой ошибке?

sqlldr USR/PWD@HOST control=<(echo "LOAD DATA INFILE input.csv BADFILE input.csv_bad DISCARDFILE input.csv_dsc INSERT INTO table TEMP_INPUT_TBL FIELDS TERMINATED BY ',' TRAILING NULLCOLS (CBPID,SAM_KEY,HHID)") 

1 Ответ

0 голосов
/ 25 сентября 2018

Почему ты так делаешь?Обычно вы создаете управляющий файл (назовем его load.ctl) и используете его при запуске SQL * Loader, например,

LOAD DATA 
INFILE input.csv 
BADFILE input.csv_bad 
DISCARDFILE input.csv_dsc 

INSERT INTO table TEMP_INPUT_TBL 
FIELDS TERMINATED BY ',' 
TRAILING NULLCOLS 
(CBPID,SAM_KEY,HHID)

, а затем

sqlldr USR/PWD@HOST control=load.ctl
...