Задание DataStage: выполнить динамический SQL с JDBCConnector
Я хочу бросить некоторые ульи динамично. Моя работа с данными считывает из другой базы данных имя таблицы и спецификации раздела. Затем с помощью трансформера пишется код drop sql, который сопоставляется со столбцом inputSql.
Картирование осуществляется через:
'alter table ' : inputLink.tablename : ' drop if exists partition (' : inputLink.partSpec : ')'
Например:
alter table mytab drop if exists partition (data='20171005')
наконец, задание использует соединитель JDBC для выполнения этого определения в базе данных Hive:
write mode = Custom
custom statements = ORCHESTRATE.inputSql
Не повезло, эта ошибка возвращается:
drop,1: Fatal Error: The connector failed to execute the statement: ?. The
reported errors are:
[SQLSTATE 42000] java.sql.SQLException: Error while compiling statement:
FAILED: ParseException line 1:0 cannot recognize input near '?' '<EOF>'
'<EOF>'.
Кто-то может мне помочь? Спасибо