Копирование данных с помощью переменной запроса

Я обнаружил, что в SSIS легко генерировать динамические запросы, используя конкатенацию строк в выражении переменной. Это сработало для меня при создании запроса и последующем его выполнении с помощью задачи «Выполнение SQL». С помощью этой реализации я могу легко создавать таблицы.

Однако мне все труднее копировать данные. Я выполняю задачу потока данных SSIS, передавая переменную в задачу потока данных с запросом, но SSIS не может проверить ее, потому что не может получить информацию на уровне столбца (поскольку запрос является динамическим). Вместо этого я попытался использовать задачу выполнения SQL для получения набора результатов, а затем скопировать этот набор результатов в таблицу. Я застрял на том, как взять набор результатов задачи «Выполнение SQL» и скопировать этот набор результатов в целевую таблицу.

Кто-нибудь решал эту проблему раньше и чем вы пользовались?


person stevebot    schedule 17.07.2013    source источник
comment
Вы пробовали установить для свойства ValidateExternalMetadata значение false?   -  person Mike Henderson    schedule 18.07.2013
comment
@MikeHenderson Этот параметр не позволит stevebot создать общую вещь ETL, как описано.   -  person billinkc    schedule 18.07.2013
comment
@billinkc, облом. Я уже однажды использовал эту настройку и подумал, что она применима и здесь.   -  person Mike Henderson    schedule 18.07.2013


Ответы (1)


Как насчет того, чтобы добавить немного к вашему динамическому оператору, чтобы включить вставку?

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

Вставить в имя таблицы Статус динамического выбора

Является ли набор результатов настолько простым, что вы можете сразу перейти к таблице?

person jtweeder    schedule 17.07.2013
comment
Да, я мог бы сделать вставку в. В моем случае запрос является удаленным, поэтому мне придется добавить связанный сервер. - person stevebot; 18.07.2013