【发布时间】:2018-07-09 15:40:00
【问题描述】:
在 Visual Studio 2017 的 SSIS 包中,我创建了两个包配置。一个用于开发,一个用于生产。我放入包中的只是连接字符串。
我现在对我实际上如何使用感到困惑。例如,当我双击我的一个 sql 任务时,它仍然显示原始连接字符串。如何在两个包之间切换?
另外,对于我的脚本任务,我如何访问该连接字符串?
【问题讨论】:
标签: ssis
在 Visual Studio 2017 的 SSIS 包中,我创建了两个包配置。一个用于开发,一个用于生产。我放入包中的只是连接字符串。
我现在对我实际上如何使用感到困惑。例如,当我双击我的一个 sql 任务时,它仍然显示原始连接字符串。如何在两个包之间切换?
另外,对于我的脚本任务,我如何访问该连接字符串?
【问题讨论】:
标签: ssis
第一部分:
您看到的连接属性和值本质上是静态的,您在开发SSIS 包时提供了这些属性。配置文件中的配置只会在您实际运行包时使用,然后选择要使用的配置,以便包从您的 dtsconfig 文件中动态选择配置值。
在此处阅读 Execute Package Utility 和 dtexec 在此处了解如何使用包配置。
或者,如果您想使用预定的Sql Agent Jobs 运行您的SSIS 包,则提到了here 的步骤。
第二部分:
这是一个示例代码 sn-p (C#),您可以在脚本任务中使用它来获取连接管理器信息 -
public void Main()
{
ConnectionManager cm;
cm = Dts.Connections["AdventureWorks"];
MessageBox.Show(cm.ConnectionString, "OLEDB Connection");
string myFlatFileConnection =
Dts.Connections["Flat File Connection Manager"].AcquireConnection(Dts.Transaction)
as string;
MessageBox.Show(myFlatFileConnection, "Flat File Connection");
Dts.TaskResult = (int)ScriptResults.Success;
}
阅读更多here。
【讨论】: