OPENROWSET не может конвертировать дату и время из текстового файла
У меня есть плоский файл, который создается с помощью служб SSIS. плоский файл хранит все значения для даты и времени в следующем формате
2001-02-14 09:46:48.123000000
когда я пытаюсь использовать плоский файл, сгенерированный из служб SSIS, чтобы загрузить данные из плоского файла на сервер SQL с помощью "OPENROWSET". это выдает ошибку
Не удалось преобразовать имя столбца (с типом данных datetime)
Любое предложение, как это исправить?
схема источника, из которого генерируется плоский файл, и схема назначения, куда загружаются данные из плоского файла. но все еще не в состоянии загрузить данные.
1 ответ
Решение
Просто обрежьте конечные нули:
select cast( '2001-02-14 09:46:48.123000000' as datetime)-- error
select cast( '2001-02-14 09:46:48.123' as datetime)-- ok
select cast( '2001-02-14 09:46:48' as datetime) -- ok
select cast( left('2001-02-14 09:46:48.123000000', 23) as datetime) -- ok