Я не могу найти способ указать относительный путь для моего infile при использовании sql loader.
Я запускаю его через командную строку, и это выглядит так:
C:\app\...in\sqlldr.exe userid=user/pass
control="C:\User...DATA_DATA_TABLE.ctl" log="C:\User...DATA_DATA_TABLE.log"
bad = "C:\User...DATA_DATA_TABLE.bad" discard = "C:\User...DATA_DATA_TABLE.dsc"
(я добавил возврат каретки только для удобочитаемости, здесь я использую командуэто одна строка)
И это работает, он начнет вставлять вещи в таблицу, ЕСЛИ путь к моему infile в .ctl абсолютно такой же, как "C: \ Usertemp \ example.ldr"
Мой ctl был сгенерирован автоматически sqldeveloper.И я просто изменил путь к этому:
OPTIONS (ERRORS=50)
LOAD DATA
INFILE 'AI_SLA_DATA_DATA_TABLE.ldr' "str '{EOL}'" <-- i'm trying to get relative path here but doesn't work
APPEND
CONTINUEIF NEXT(1:1) = '#'
INTO TABLE "USER"."DATA"
...other sqldeveloper generated stuff
Файл .ldr находится в том же каталоге, что и файл .ctl.Возможно ли получить путь CTL?Я почти уверен, что он ищет файл .ldr рядом с sqlldr.exe вместо ctl.
Какие-нибудь советы для этого?Я не могу найти ответы на docs.oracle.
Спасибо.