Запуск пакета SSIS для разных баз данных при выборе раскрывающегося списка в форме Windows

Я сделал пакет SSIS для передачи данных между двумя базами данных на разных серверах. Теперь проблема в том, что я не могу передать строку подключения в пакет динамически во время выполнения. У меня есть форма Windows для выполнения этого пакета. В этой форме Windows у меня есть раскрывающиеся списки для выбора исходной и целевой баз данных для передачи данных. Итак, могу ли я иметь способ сообщить пакету, что это строка подключения исходной и целевой базы данных, где он должен выполнять действия во время работы, динамически при щелчке раскрывающихся щелчков формы Windows ..


person user2587360    schedule 28.08.2013    source источник
comment
Посмотрите stackoverflow.com/questions/2497875/ Я думаю, это связано. Вам необходимо создать параметры для вашего проекта, а затем указать эти параметры в диспетчере соединений.   -  person Brian O''Byrne    schedule 28.08.2013
comment
Вы запускаете свой пакет через dtexec.exe или создаете экземпляр базовой объектной модели .net?   -  person billinkc    schedule 28.08.2013


Ответы (2)


Если целевой сервер не будет меняться каждый раз, вы можете объединить имя сервера в строке подключения пакета ssis с переменной. Если нет, вам нужно передать имя сервера также из формы Windows.

person Roshan    schedule 28.08.2013
comment
Спасибо, Рошан, я могу передать имя сервера из формы выигрыша, но я новичок в этом, не могли бы вы рассказать мне, как я могу изменить строку подключения пакета SSIS с помощью переменной. - person user2587360; 28.08.2013
comment
Откройте существующий пакет ssis в BIDS. Создайте две новые переменные (VAR1 и VAR2) со строкой типа данных, и область действия должна охватить пакет. Например: если вы хотите изменить исходное соединение, вам необходимо перезаписать существующее имя сервера с помощью нового сервера и базы данных с помощью новой базы данных. Передайте имя сервера исходного соединения в Var1 и имя базы данных в VAR2. Просто переопределите имя сервера и имя базы данных, используя выражение с новыми переменными. - person Roshan; 28.08.2013

В вашем пакете щелкните правой кнопкой мыши диспетчер соединений и выберите «Параметризация». Создайте параметры для ServerName, InitialCatalog, UserName и Password. При выполнении пакета передайте параметры для нужного соединения.

В качестве альтернативы вы можете создать один параметр для ConnectionString и передать его целиком. Лично я предпочитаю первое.

Я должен добавить ... это только для SSIS 2012. До этого параметров пакета не существовало.

person Metaphor    schedule 28.08.2013