0

我参与了这个论坛的讨论,关于当你修改 XML 配置文件时 SSIS 是否覆盖包。这篇文章底部的两篇文章彼此不同意,一篇说包确实会被覆盖,另一篇说它们不会。我相信我有答案,但正在寻找其他人对此的想法 - 如果您在设计时修改 xml 包配置并通过 Visual Studio 运行包,则在保存包时,包代码实际上由 SSIS 修改以反映您已更改的配置。但是,如果您通过 DTEXEC 或 SQL Server Agent 运行包,则不会修改包代码

如果我在 Visual Studio 中有一个包,如果我在 XML 配置中修改连接字符串中的服务器名称(将服务器 A 更改为服务器 B),然后运行该包

我期望的行为很好,它将数据写入第二台服务器上的表我不期望的行为是这样的。当我在 Visual Studio 包中拉起连接管理器时,服务器 A 已更改为服务器 B

SSIS 修改了我包中的代码。

这种行为可能非常令人困惑,并且在我正在从事的项目上花费了我很多时间。恕我直言,应该只在运行时覆盖值,而不是在设计时覆盖包!

你对此有什么想法吗?

帖子 1 声明它确实覆盖

ssis xml 配置修改包 xml - 我疯了吗?

帖子 2 声明它不会覆盖

ssis xml 配置 - 配置覆盖包 - ssis 会在你不告诉它的情况下更改配置吗?

4

1 回答 1

0

如果您从 Visual Studio 2005 / 2008(对于 SQL 2005 / 2008 / 2008 R2)执行一个包,那么它确实会使用配置的值进行覆盖。

使用项目部署模型的 Visual Studio 2010(用于 SQL 2012)似乎可以避免此问题。

于 2013-01-31T11:21:03.303 回答