Действительно ли вы имеете в виду DTS (SQL2000) или его новый SSIS для сестер? В любом случае у меня была аналогичная проблема, когда мне приходилось указывать несколько динамических подключений к пакету. Так я решил, что это так:
От вызывающему: - запись в таблицу SQL двух столбцов: - Колонка «Ключ» была конкретная связь с целевой - В столбце «Значение» было установлено новое соединение значение
Внутри упаковки: - Использование SQL Task для чтения пары ключ/значение в @user :: переменных - Используйте задачу сценария, чтобы получить дескриптор запущенного экземпляра себя -> Присвоить соединение строки через эту рукоятку
DTS Пример:
' Get a reference to self (the DTS package currently running)
Set oPkg = DTSGlobalVariables.Parent
' Get connection to Input File - Set Path
Set oCn = oPkg.Connections.Item ("MasterFileIn")
oCn.DataSource = workAreaPath & "MasterFile.txt"
SSIS не разрешает доступ к активному объекту пакета, но вы можете установить соединения напрямую. В вашем ScriptMain.cs файла:
ConnectionManager cm = Dts.Connections["MasterFileIn"];
cm.ConnectionString = Dts.Variables["DataSource"].Value;
Пожалуйста, не префикс своих названий с "C#" и тому подобными. Вот для чего нужны названия. –
@JohnSaunders - да? Для чего нужны _tags_? –
@KennyEvitt: Я думаю, что мы даже - я не знаю, о чем вы говорите, и я думаю, что, поскольку вы отвечаете на мой комментарий от четырех месяцев назад, вы не знаете, что такое _I_ ссылаясь на. –