Я создаю пакет служб SSIS для импорта файла CSV в таблицу.В настоящее время я импортирую плоский файл, создаю производный столбец, выполняю преобразование данных и затем загружаю его в БД.
Поток данных пакета
![Package Data Flow](https://i.stack.imgur.com/Ed5GD.png)
Проблема, с которой я сталкиваюсь при попытке преобразовать столбец типа DT_DBTIMESTAMP2
в datetime2
, приводит к следующей ошибке:
[Назначение OLE DB [78]] Ошибка: код ошибки служб SSIS DTS_E_OLEDBERROR.Произошла ошибка OLE DB.Код ошибки: 0x80004005.
Доступна запись OLE DB.Источник: «Поставщик Microsoft OLE DB для SQL Server». Hresult: 0x80004005 Описание: «Недопустимое символьное значение для спецификации приведения.».
Доступна запись OLE DB.Источник: «Поставщик Microsoft OLE DB для SQL Server». Результат: 0x80004005 Описание: «Недопустимое символьное значение для спецификации приведения.».
формат моих данных:
20-NOV-18 06.09.43.928460000 PM
В моем производном столбце я использую следующее выражение, которое, по-видимому, дает мне искомый результат:
"20" + SUBSTRING(DSTAMP,8,2) + "-" +
(SUBSTRING(DSTAMP,4,3) == "JAN" ? "01" :
SUBSTRING(DSTAMP,4,3) == "FEB" ? "02" :
SUBSTRING(DSTAMP,4,3) == "MAR" ? "03" :
SUBSTRING(DSTAMP,4,3) == "APR" ? "04" :
SUBSTRING(DSTAMP,4,3) == "MAY" ? "05" :
SUBSTRING(DSTAMP,4,3) == "JUN" ? "06" :
SUBSTRING(DSTAMP,4,3) == "JUL" ? "07" :
SUBSTRING(DSTAMP,4,3) == "AUG" ? "08" :
SUBSTRING(DSTAMP,4,3) == "SEP" ? "09" :
SUBSTRING(DSTAMP,4,3) == "OCT" ? "10" :
SUBSTRING(DSTAMP,4,3) == "NOV" ? "11" :
SUBSTRING(DSTAMP,4,3) == "DEC" ? "12" : " ")
+ "-" + LEFT(DSTAMP,2) + " " + SUBSTRING(DSTAMP,11,2) + ":" +
SUBSTRING(DSTAMP,14,2) + ":" + SUBSTRING(DSTAMP,17,2) + "." +
SUBSTRING(DSTAMP,20,7)
Я настроил средство просмотра данных, и оно, похоже, дает мне желаемый результат:
Вывод средства просмотра данных
![Data Viewer Output](https://i.stack.imgur.com/XhfR6.jpg)
Я просмотрел множество сообщений в поисках ответа, но не нашел такого, которыйработает для моей ситуации.Перед сбоем пакет пробирается к месту назначения OLE DB.
Я очистил входной файл в поисках аномалий, и все строки верны.
полагал, что другой набор глаз может помочь, любые предложения с благодарностью!