Выполнение динамического SQL в SSIS задачи потока данных

Вот что я хочу сделать:

Я выбираю сценарии SQL из базы данных и назначаю эти сценарии переменной в каждом цикле (представьте, что все сценарии имеют разные столбцы). После этого я пытаюсь выполнить сценарии SQL в источнике ODBC задачи потока данных. Я использую SQL_COMMAND @variable из свойств задачи потока данных. Этот вариант не работает. Я думаю, он не понимает динамические столбцы. SSIS выдает ошибку проверки.

Кроме того, я попытался выполнить эти сценарии в Execute SQL Task из переменной. Опять же, мой источник - ODBC. Я назначил полный набор результатов объектной переменной в Execute SQL Task, но это дает мне ошибку. Насколько мне известно, есть проблема с ODBC. Итак, я не могу назначить полный набор результатов объектной переменной в ODBC.

У вас есть какие-нибудь идеи? Как я могу выполнить эти скрипты в SSIS и получить результат? Мне нужно получить результат и вставить его в целевую таблицу.

P.S: Я не могу использовать соединение OLE DB из-за проблемы с сервером. Все сценарии должны выполняться в одной среде.


person F. Erdi    schedule 17.10.2016    source источник


Ответы (1)


SSIS требует, чтобы метаданные столбца были статичными и правильными для всех источников, преобразований и мест назначения. Вы не можете просто просмотреть список сценариев и запустить разные результаты в одном и том же потоке данных.

Единственный способ добиться этого - использовать что-то вроде Biml, чтобы программно создавать ваши пакеты из ваших исходных скриптов. . Существует несколько бесплатных и платных способов разработки Biml, таких как бесплатные надстройки BIDSHelper и BimlExpress (сделанные создателями Biml: Varigence) для Visual Studio или платная BimlStudio (также от Varigence).

person iamdave    schedule 17.10.2016