В настоящее время у меня есть поток управления, который подключается к более чем 20 дБ (та же структура)
В этом потоке controlf все то же самое, за исключением потоков данных, которые отличаются только в связи с db. Это пример потока данных:
Источник OLE DB - совсем другое дело.
Можно ли в этом случае использовать цикл Foreach, чтобы избежать этих повторений? Если можно, как это сделать? Я не нашел хорошей статьи, в которой описывалось бы, как подключиться к разным БД.
Спасибо,
Илия
РЕДАКТИРОВАТЬ:
Я нашел статью, в которой описывается большая часть того, что мне нужно: http://sql-bi-dev.blogspot.com/2010/07/dynamic-database-connection-using-ssis.html
Я выполнил все шаги формы здесь, но я не понимаю части с запросом. Это запрос из той статьи:
SELECT '' TableName, N'' ConnString, 0 RecordCount, GETDATE() ActionTime
Я не понимаю этого синтаксиса, и я думаю, что здесь возникают ошибки:
[Источник OLE DB 1] Ошибка: произошла ошибка с выходным столбцом "ConnString" (37) на выходе «OLE DB Source Output» (11). Возвращенный статус столбца был: «Текст был усечен или один или несколько символов не соответствовали целевой кодовой странице».
[Источник OLE DB 1] Ошибка: "выходной столбец" ConnString "(37) «сбой из-за усечения», а расположение строки усечения в «выходном столбце« ConnString »(37)» указывает сбой при усечении. Произошла ошибка усечения для указанного объекта указанного компонента.
[SSIS.Pipeline] Ошибка: код ошибки SSIS DTS_E_PRIMEOUTPUTFAILED. Метод PrimeOutput компонента «Источник OLE DB» (1) вернул код ошибки 0xC020902A. Компонент вернул код ошибки, когда механизм конвейера вызвал PrimeOutput (). Значение кода ошибки определяется компонентом, но ошибка является фатальной, и выполнение конвейера прекращается. Перед этим могут быть опубликованы сообщения об ошибках с дополнительной информацией об ошибке.
Я хотел бы получить данные из таблицы с именем Agency (которую я определил в переменной SourceTable = 'Agency' - если я установлю несуществующую таблицу, я получаю сообщение об ошибке, поэтому я думаю, что соединение с исходной БД в порядке) ... и это Меня смущает то, что я нигде не определил, какие столбцы мне нужны, поэтому я предполагаю, что в этом запросе есть ошибка, но я не понимаю его синтаксиса. Любое предложение?
ИЗМЕНИТЬ 2:
Еще одна проблема, с которой я столкнулся, заключается в том, что окно сообщения всегда возвращает мне одно и то же значение в строке подключения - переменная ConnString не изменяется. Как мне присвоить ему значение из переменной SourceList?