遇到错误
从外壳程序脚本执行以下SQL * Loader语句时LRM-00116:')'之后的')'语法错误
。但是,如果我执行与命令行参数相同的单个语句,那么它可以正常工作。
请帮助您了解此错误?
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)")
答案 0 :(得分:1)
为什么要那样做?通常,您需要创建一个控制文件(我们将其称为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