Ошибка преобразования между «DT_DBTIME2» и «DT_WSTR» для «ETAHour» - PullRequest
3 голосов
/ 25 октября 2011

У меня есть SQL-запрос, который возвращает мне "time(0)".Я загружаю это в SSIS, и оно автоматически конвертируется в "DT_DBTIME2", что нормально.Я могу преобразовать его в любой другой тип без ошибок, используя элемент потока данных преобразования данных.

Моя проблема заключается в том, что когда я пытаюсь вставить это значение в поле "time(0)" таблицы, он дает мне следующееошибка:

Поставщик OLE DB, используемый адаптером OLE DB, не может выполнить преобразование между типами "DT_DBTIME2" и "DT_WSTR" для "ETAHour".

При наведении курсора мышиполя в компоненте OLE DB Destination, в нем четко сказано, что исходное поле - DT_DBTIME2, а поле назначения - DT_DBTIME2.Мне действительно интересно, откуда эта ошибка преобразования.

Ответы [ 2 ]

1 голос
/ 22 сентября 2016

Была ли аналогичная проблема после импорта существующего проекта служб SSIS, создала новую строку подключения, и после того, как я переключился, было несколько ошибок.

Изменение поставщика OLE DB на SQL Server Native Client 11.0 решило проблему, которая эквивалентнанастройка SQLNCLI11.1

введите описание изображения здесь

1 голос
/ 21 мая 2014

Убедитесь, что вы указываете провайдера в строке подключения.

В моем случае я использую MSSQL 2012 Enterprise. Он работает на локальной машине, но после обновления строки подключения в dtsconfig в установщике происходит сбой с ошибкой выше.

Настройка фиксированной проблемы поставщика OLE DB, в моем случае:

Provider=SQLNCLI11.1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...