Вставить данные из одной Mysql таблицы на сервере A в другую Mysql таблицу внутри SSIS - PullRequest
0 голосов
/ 14 июля 2020

Я пытаюсь вставить идентификатор из MySQL таблицы T1 на сервере A, в MySQL таблицу T2 на сервере B внутри пакета SSIS.

Я пробовал ADO . NET источник для чтения данных и ADO. NET назначение, и он дает мне эту ошибку:

[ADO NET Destination [2]] Ошибка: System.NullReferenceException: ссылка на объект не устанавливается в экземпляр объекта. в Microsoft.SqlServer.Dts.Pipeline.ADONETDestination.PreExecute () в Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostPreExecute (IDTSManagedComponentWrapper100) [SSIS.Pipeline] Ошибка: завершилась фаза предварительного назначения ADO NET. код ошибки 0x80004003.

На самом деле я решил проблему, вставив в таблицу SQL Server, а затем запустив оператор Insert через связанный сервер с этим оператором:

EXEC(@Insert) AT [LinkedServerName]

Интересно, есть ли решение получше?

1 Ответ

0 голосов
/ 14 июля 2020

Вам необходимо будет установить коннектор MySQL ODB C на машину, на которой сначала запущен SSIS. Вы можете скачать его здесь . Затем вы можете создать соединение ODB C с MySQL в SSIS и использовать источник и место назначения данных ODB C. Вам нужно будет указать установленный коннектор в свойстве «Драйвер» соединения ODB C.

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