Пакет служб SSIS работает в VS, но не в службах SSIS из-за ошибки задачи потока данных ODBC - PullRequest
0 голосов
/ 28 сентября 2018

У нас есть тестовый пакет, разработанный с использованием VS2017, в котором есть один объект «Задача потока данных» с объектами «ODBC Source» и «ODBC Destination».Пакет просто пытается переместить записи из таблицы «Таблица_1» в таблицу «Таблица_2» в той же базе данных SQL Server 2014, которая называется «Тест».

Когда мы запускаем пакет из VS2017, он запускается успешно.

Однако, когда мы импортируем этот пакет в SSIS, а затем запускаем пакет непосредственно оттуда, мы получаем следующие сообщения об ошибках (см. Снимки экрана ниже):

The version of ODBC Destination, clsid {51B271F1-3B7E-4875-870E-62A0456FE2AD} is not compatible with this version of the DataFlow.
The version of ODBC Source, clsid {F8600F4A-E321-42F4-AA59-DA00FA374EA5} is not compatible with this version of the DataFlow.
The component is missing, not registered, not upgradeable, or missing required interfaces. The contact information for this component is "ODBC Destination;Connector for Open Database Connectivity (ODBC) by Attunity; Attunity Ltd.; All Rights Reserved; http://www.attunity.com;7".

Любые идеи какчто вызывает эти ошибки?

Пара побочных вопросов / интересных заметок:

  1. Почему он ссылается на Attunity?Мы не используем разъемы Attunity.Мы используем ODBC.У меня даже не установлен Attunity на этом компьютере (я когда-то делал это, но удалил его).
  2. Если вы не используете задачу DataFlow с драйвером OBDC и просто используете простую задачу «Выполнение SQL»'объект в пакете, который выполняет простую инструкцию INSERT INTO Table_2 ..., пакет выполняется в SSIS.Что-то не так с использованием задачи потока данных.

Снимки экрана:

Здесь вы видите, что пакет успешно работает в VS2017:

enter image description here

Пакет был импортирован в SSIS:

enter image description here

При запуске в SSIS происходит сбой сследующие ошибки:

enter image description here

1 Ответ

0 голосов
/ 28 сентября 2018

Нашел ответ из других постов.

Сначала измените свойство TargetServerVersion для проекта на версию SQL Server, которую вы используете для служб SSIS, как описано в приведенных ниже ссылках и на снимке экрана показано.

ВерсияИсточник ODBC не совместим с этой версией потока данных

SSIS: версия источника ODBC не совместима с этой версией потока данных

enter image description here

После этого вы можете столкнуться с ошибкой, которая выглядит примерно так:

[ODBC Destination [2]] Error: The AcquireConnection method call to the connection manager MyConnectionManager failed with error code 0xC0014009.  There may be error messages posted before this with more information on why the AcquireConnection method call failed.

Если вы получили эту ошибку, измените свойство Run64BitRuntime на«Истинно» для проекта, как объяснено по ссылке ниже и показан снимок экрана.

https://social.msdn.microsoft.com/Forums/sqlserver/en-US/eb9e6826-b650-433b-bab9-16da214efd99/the-acquireconnection-method-call-to-the-connection-manager-mydatabaseodbc-failed-with-error-code?forum=sqlintegrationservices

enter image description here

...