Задание 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>'.

Кто-то может мне помочь? Спасибо

0 ответов

Другие вопросы по тегам