Ошибка Oracle: - LRM-00116: синтаксическая ошибка в «control» после «=» - PullRequest
0 голосов
/ 10 октября 2011

Oracle DB / Windows XP: - Я запускаю пакетный файл, который вызывает файл «.ctl», который, в свою очередь, вызывает файл «.xls», оба из которых находятся в одной папке.Идея состоит в том, чтобы загрузить данные в базу данных Oracle, присутствующую на удаленном сервере Oracle. (Не на локальной машине)

Я получаю эту ошибку, независимо от того, что я делаю.

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

Код файла .bat такой, как показано ниже

    rem SET SQLLOGIN=remod/P3w1d0ry@wsd

    pause Ready to Load the remo.Temp_data Table

    sqlldr userid=%SQLLOGIN% control=TempData.ctl errors=100 

    pause

The .ctl file is as follows:-
LOAD DATA
INFILE "data.xls"
replace
into table remo.Temp_data
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
TRAILING NULLCOLS
(
test_abbr "rtrim(:test_abbr)",
test_pk       "rtrim(:test_pk)",
test_sk       "rtrim(:test_sk)",
test_dt       "rtrim(:test_dt)",
test_email       "rtrim(:test_email)",
)

1 Ответ

2 голосов
/ 10 октября 2011

Вы отметили SET из SQLLOGIN. Также вы можете захотеть сделать вызов перед оператором sqlldr. Вам также понадобятся некоторые данные для загрузки ...

SET SQLLOGIN=remod/P3w1d0ry@wsd

pause Ready to Load the remo.Temp_data Table

call sqlldr userid=%SQLLOGIN% control=TempData.ctl data=mydata.csv errors=100 
...