Как параметризовать строку подключения к базе данных в пакете служб SSIS? - PullRequest
10 голосов
/ 16 марта 2010

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

Я пытаюсь заменить имя базы данных и экземпляр сервера sql моей переменной @ [User :: SourceDb]. @ [User :: SourceHost], но ему не удалось подключиться к базе данных.

Можно ли параметризировать базу данных и есть ли что-то не так с использованием моей переменной? Заранее спасибо!

Ответы [ 3 ]

6 голосов
/ 16 марта 2010

Есть хороший пост здесь , в котором подробно описан один из способов сделать это.

Вам нужно будет использовать ConnectionManager и установить его свойство ConnectionString из пакета конфигурации.

Свойство ConnectionString является полной строкой подключения к базе данных, например

Data Source=localhost;Initial Catalog=SSISConfig;Provider=SQLNCLI.1;Integrated Security=SSPI;Auto Translate=False;

Есть несколько ошибок и неудобств при использовании пакетов конфигурации, поэтому вам, возможно, придется немного покопаться. Я бы сказал более подробно, но прошло около года с тех пор, как я последний раз работал над проектом SSIS.

Если у вас есть какие-то конкретные проблемы, пожалуйста, вернитесь и прокомментируйте, что вы ударили. Я попытаюсь освежить старые воспоминания.

3 голосов
/ 16 марта 2010

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

Вы не можете использовать переменные напрямую довольно часто в SSIS

См. " Использование переменных в пакетах" , которые ссылаются на Использование выражений свойств в пакетах .

И после быстрого Бингла: http://sqlrs.blogspot.com/2006/03/using-expression-variables-in-ssis.html

0 голосов
/ 01 сентября 2015

Вы можете щелкнуть правой кнопкой мыши на любом соединении в проекте или пакете и «Параметризировать» все поля из соединения, в проекте или в параметрах пакета. Строка подключения отличается для подключения OLE DB к типу .NET Providers (SqlClient Data Provider), поэтому будьте осторожны. Нам удалось иметь одно централизованное место для подключения в Project.params

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