Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SQL2012, пакет SSIS, загрузка в цикле по подставным подключениям?  [new]
Pvase
Member

Откуда:
Сообщений: 995
Здравствуйте. Есть такая задача. Имеется около 15 баз. Структура их одинаковая, но данные разные. Надо из этих баз загрузить данные. Можно ли сделать пакет, который в цикле будет выполнятся для всех баз, при этом не создавая 15 подключений, а лишь изменяя программно параметры подключения до выполнения пакета?
1 июл 15, 09:29    [17835903]     Ответить | Цитировать Сообщить модератору
 Re: SQL2012, пакет SSIS, загрузка в цикле по подставным подключениям?  [new]
Glory
Member

Откуда:
Сообщений: 104760
Подключаются к серверу, а не к базе
У вас 15 серверов ?
1 июл 15, 09:32    [17835916]     Ответить | Цитировать Сообщить модератору
 Re: SQL2012, пакет SSIS, загрузка в цикле по подставным подключениям?  [new]
Pvase
Member

Откуда:
Сообщений: 995
Glory
Подключаются к серверу, а не к базе
У вас 15 серверов ?

Серверов меньше, где-то 10, на нескольких серверах по две базы.
1 июл 15, 09:35    [17835932]     Ответить | Цитировать Сообщить модератору
 Re: SQL2012, пакет SSIS, загрузка в цикле по подставным подключениям?  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4807
Pvase,

есть такая вещь как ODBC ALIAS , который позволяет маппить connection на разные базы

http://fixmyitsystem.com/2011/09/using-sql-aliases-to-make-database.html

Создайте алиас, сделайте на его основе connection string.

Единственно, чего я сходу не могу сказать, так это как его программно менять. Но уверен стоит попробовать. Может C# блок какой написать придётся.
1 июл 15, 10:38    [17836260]     Ответить | Цитировать Сообщить модератору
 Re: SQL2012, пакет SSIS, загрузка в цикле по подставным подключениям?  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4807
или

http://stackoverflow.com/questions/5670109/passing-values-to-ssis-connecting-string-from-c-sharp


Create a new Script Task before your SQL Query tasks. Use a script task to update the ConnectionString like this (assuming your connection name is "SQLConnection":

Dts.Connections("SQLConnection").ConnectionString = "Data Source =" + System.Environment.MachineName.ToString() + ";Initial Catalog =myDataBase; Integrated Security =SSPI;";

I remember the UI being particularly restrictive on where and when this variable is set, but I have done this in the past. Let me know if you encounter issues.
1 июл 15, 10:43    [17836288]     Ответить | Цитировать Сообщить модератору
 Re: SQL2012, пакет SSIS, загрузка в цикле по подставным подключениям?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31780
Pvase
Можно ли сделать пакет, который в цикле будет выполнятся для всех баз, при этом не создавая 15 подключений, а лишь изменяя программно параметры подключения до выполнения пакета?
Да, можно. В чём вопрос-то?

Делаете цикл, в нём меняете параметры подключения (например, в переменных), а коннект настраиваете из этих переменных.
1 июл 15, 11:42    [17836717]     Ответить | Цитировать Сообщить модератору
 Re: SQL2012, пакет SSIS, загрузка в цикле по подставным подключениям?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31780
alexeyvg
а коннект настраиваете из этих переменных.
Там в свойствах коннекта есть "Expressions".

Вот там пишете выражение для параметра Connection string, сколнструировав его из переменных.
1 июл 15, 11:46    [17836751]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить