Компонент Talend tDRow выдает ошибку ORA-00933 - PullRequest
0 голосов
/ 17 октября 2018

Я использую компонент tDBRow в Talend, где я выполняю простой запрос:

" 
insert into test.wk_sf_l_srv_cshistory_to_load select
ID, 
CREATEDDATE
from test.CASE_HISTORY_FULL
where createddate >=  " +context.builtIn_lastRunDate +  " "

, но когда я запускаю свою работу, появляется ошибка ora-00933 sql command not properly ended.Это проблема использования переменной контекста?Я искал и видел, что могу написать так, но это не работает.

РЕДАКТИРОВАТЬ Я пытался выполнить тот же запрос в SQL Developer, используя случайную дату, и никаких ошибок не выдается.

1 Ответ

0 голосов
/ 20 октября 2018

Проблема в том, что вы неправильно строите свой запрос.Я предполагаю, что context.builtIn_lastRunDate является строкой, поэтому вы должны заключить ее в кавычки следующим образом:

"insert into test.wk_sf_l_srv_cshistory_to_load select
ID, 
CREATEDDATE
from test.CASE_HISTORY_FULL
where createddate >=  '" + context.builtIn_lastRunDate +  "'"

Если context.builtIn_lastRunDate относится к типу даты, вам необходимо отформатировать его в строку следующим образом:

".. where createddate >= '" + TalendDate.formatDate("<date format here>", context.builtIn_lastRunDate) + "'"
...