Я пытаюсь прочитать данные из «Teradata» и заполнить их в базе данных «Oracle». Пожалуйста, найдите ниже моего потока,PutSql - ошибка формата даты
'ExecuteSQL' -> 'SplitAvro' -> 'ConvertAvroToJSON' -> 'ConvertJSONToSQL' -> 'PutSQL' сообщение
Ошибка: Не удается обновить базу данных для StandardFlowFileRecord из-за орг .apache.nifi.processor.exception.ProcessException: значение sql.args.7.value равно «2999-12», которое не может быть преобразовано в метку времени; routing to failure: org.apache.nifi.processor.exception.ProcessException: значение sql.args.7.value равно «2999-12», которое не может быть преобразовано в метку времени
Кажется, мне нужно отформатируйте поле «Дата», прежде чем я запишу его в Oracle. Не могли бы вы объяснить мне, какой процессор должен содержать эту логику форматирования даты?
Анализ Furthur показывает, что конкретное значение было усечено процессором ConvertJSONToSQL. входного значения для процессора «ConvertJSONToSQL» - «2002-02-04» Обработанного значение - «2002-02»
Благодарим вас за ответ. Я обновил свой поток, как показано ниже, ExecuteSQL -> SplitAvro -> ConvertAvroToJSON -> EvaluateJsonPath -> ConvertJSONToSQL -> UpdateAttribute -> PutSQL Теперь я могу сохранить первоначальное значение даты и отправить его в процессор PutSQL. Проблема заключается в том, что обработчик PutSQL не рассматривает ни один из ofat как действительный. Я пробовал следующие различные форматы: '2015-12-31' '2015-12-31 12:12:00' '2015-12-31 12: 12: 00: 000' Все приводили к тому же 'не может быть преобразована в метку времени. Ваш совет будет полезен. Есть ли какая-нибудь работа для NIFI-3430? – Pons