Обработка дат при копировании из таблицы Excel в базу данных сервера SQL в Talend

Я копирую данные из книги Excel в таблицу базы данных сервера SQL. В одном из столбцов моего листа Excel есть даты, которые я генерирую с помощью функции Rand.

Если я сохраню типы данных моих столбцов в виде строки как в своем входе Excel, так и в выводе SQL. Я получаю сообщение об ошибке "Преобразование не удалось при преобразовании символьной строки в тип данных smalldatetime".

Если я сохраняю свои типы данных как Дата, это выдает ошибку, которая говорит: "Формат ячейки не Дата в....(адрес ячейки)"

В моем определении таблицы в SQL-сервере. Он имеет тип данных smalldatetime.

Для решения этой проблемы я использую tConvertType. Но я получаю сообщение об ошибке: "Формат ячейки не Дата в....(адрес ячейки)"

Я приложил скриншоты моей работы.

2 ответа

Решение

Вы также можете использовать метод TalendDate.parseDate для конвертации... это можно использовать в выражении в tMap... так что ваш поток с чтением даты из Excel в виде String и преобразованием его в дату с использованием TalendDate.parseDate("yyyy-MM-dd HH: мм: сс","")

компоненты ввода -> tmap -> tmssqloutput.

Вам необходимо преобразовать тип в вашей работе Talend.

Считайте дату в виде строки, а затем используйте компонент tConvertType для преобразования типа из строки в тип даты с определенным форматом даты. Затем вы сможете отправить это в базу данных как smalldatetime тип данных

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