Как запустить запрос SQL Update в NiFi PUTSQL? - PullRequest
0 голосов
/ 21 февраля 2019

Я хочу обновить 1 столбец ( с именем enum_value ) tableB со значениями другого столбца ( с именем enum_value ) в tableA используя запрос на обновление MySQL следующим образом:

UPDATE tableB t1 INNER JOIN TableA t2
ON t1.sig_name=t2.sig_name
SET t1.enum_value=t2.enum_value
WHERE t1.dbc_Version=t2.dbc_version

Приведенный выше SQL-запрос прекрасно работает в рабочей среде MYSQL, но я хочу выполнить этот запрос (Выполнить это Обновление динамически, используя NiFiСвойство PUTSQL (оператор SQL). Когда я пишу это в NiFi PutSQL, оно выдает мне ошибку. Я прикрепил скриншоты ниже: ConvertJsonTOSQL PUTSQL SQLstatement PUTSQL Error

Есть ли способ, которым я могу добиться динамического (на лету обновления в БД), используя NiFi? Если да, то как и какие сервисы контроллера должны быть благодарны заранее!

Заранее спасибо!

1 Ответ

0 голосов
/ 21 февраля 2019

Если у вас есть запрос непосредственно в PutSQL, какова цель процессора ConvertJSONToSQL прямо перед этим?Этот процессор генерирует атрибуты из данных JSON, которые ищет PutSQL при попытке заполнить подготовленный оператор параметрами (которых у вас нет, поскольку вы используете явный оператор без ? s).

См. эту публикацию SO для получения дополнительной информации, в основном вы должны использовать UpdateAttribute для удаления любых атрибутов, созданных ConvertJSONToSQL.

...