使我的 SSIS 包可移植 - 如何做到这一点?

Posted

技术标签:

【中文标题】使我的 SSIS 包可移植 - 如何做到这一点?【英文标题】:Making my SSIS package portable - how to do this? 【发布时间】:2009-05-27 09:05:50 【问题描述】:

我知道如何创建 SSIS 包并获取我的数据源和目标。 但是,如果我想让它具有便携性,我可以在将包移动到另一台 PC 时更改源和目​​标连接字符串,那么我必须在包中做什么?

【问题讨论】:

【参考方案1】:

几个选项。您的意思是要使解决方案可移植,以便您可以在不同的 PC 上进行开发,还是要使最终可部署包可移植?

您可以同时使用包配置。它们可以在 SSIS / 配置菜单下访问。您指定要动态化的对象的属性,然后将其保存到 XML 文件中(例如连接字符串、路径位置、变量值)。

您可以在文本编辑器中更改此 xml 文件,当包运行时,它将使用这些值。但是,如果您在多台机器上进行开发,这仍然有点麻烦。在新 PC 上打开解决方案时,您可能需要重新指定要使用的配置文件。

相反,如果是数据库连接字符串,请考虑使用受信任的连接。它们意味着您不必输入 SQL 凭据。如果它用于文件位置,这将不起作用,但您可以复制目录结构或其他东西来解决这个问题。

如果是为了部署,那么包配置绝对是要走的路。确保您的项目正在使用配置文件,然后在编译时可以选择创建“部署包”。我认为这是在构建选项下。这将创建一个与配置文件打包在一起的安装程序文件,当您运行此安装程序时,您可以查看/更改配置值。

编辑 - 在这里找到了更详细的回复:http://vyaskn.tripod.com/sql_server_2005_making_ssis_packages_portable.htm

【讨论】:

【参考方案2】:

连同包配置。您可以创建一个部署实用程序,然后您可以使用它来进行文件系统部署。当您运行已部署的可执行文件时,您将能够选择使用哪个配置文件来运行包。

此设置默认设置为“false”

项目 > 属性... > 部署实用程序 > CreateDeploymentUtility = true

【讨论】:

以上是关于使我的 SSIS 包可移植 - 如何做到这一点?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Maven 的环境变量

如何使我的文本字段成为行而不是框?

SSIS中的Hyperion Essbase连接

如何使我的程序每给定时间只迭代一次(如1s)?

使我的 GUI 可以通过键盘访问(Xp、Visual Studio、C++)

我如何在 CSS 中做到这一点而不使用表格?