【发布时间】:2015-08-28 03:08:05
【问题描述】:
我有一个非常简单的 SSIS 包,它在连接管理器部分定义了 2 个连接。 MS Access 数据源和 MS SQL 数据源目标。这个包所做的只是截断 SQL 目标中的表并将数据从 MS Access 导入 SQL 表。这在 VS2013 的开发过程中按预期工作。
现在,我还为包启用了包配置,并在 C: 驱动器根目录的文件夹中有几个 XML 配置文件(每个连接 1 个)。配置文件连接因它们所在的服务器而异,但文件夹结构存在于两台服务器上,因此包可以针对运行它的服务器执行。
我已选中该框以启用包配置并将包部署到 2 个不同的服务器。 1个用于开发,另一个用于QA。当我通过我的开发服务器上的 SSMS 集成包执行来执行包时,包使用了 Development 表。但是当我在我的 QA 环境中执行相同的包时,它也使用了 Development 表。
由于开发连接是通过连接管理器嵌入到包中的连接,因此看起来(可能无论如何)包正在使用嵌入式连接并忽略配置文件。
我已经在“配置”部分的“执行包实用程序”中明确添加了配置文件的路径,以查看它是否有任何区别,但结果是相同的。配置文件未被确认。因此,似乎该包再次使用了配置管理器中定义的嵌入式连接。
我想我“可能”能够从连接管理器部分的包中删除连接,并在设计时关闭验证,然后再次部署以强制包使用配置文件,但这并没有似乎是要走的路,充其量是一个黑客;前提是它甚至可以工作。
并不是说我认为它应该有所作为,而是为了提供更多细节,这里是关于我的服务器配置的更多信息:
开发 - SQL 2014 [服务器名称] 质量保证 - SQL 2014 [ServerName][InstanceName]
我不记得以前有过这个问题,因此我发帖的原因。
【问题讨论】:
-
我的第一个猜测是你在设置配置使用时犯了一些错误,只是还没有发现。
标签: sql sql-server ssis