我正在尝试为单个软件包usinig项目部署设置部署过程,以便VS2012。我发现要改变服务器上的dynamicaly连接字符串,我可以参数化连接,所以我做了这个并创建了环境,我用inviroment运行我的包,其中connnections字符串作为参数,所有似乎都很好,但为什么连接管理器我仍然可以看看开发时做的一些旧设置?我该如何删除它?
答案 0 :(得分:3)
通过参数化,我假设您使用“配置”部分来全局配置项目/包或基于每个执行。这与使用项目/包参数
形成对比我在部署文件夹中创建了一个名为ConnectionStrings
的SSIS环境变量,它有两个值:ServerName和CatalogName。
我右键单击了我的项目DeployMe,然后选择了Configure。在屏幕截图中,您已单击特定包并选择了“配置”。或者您手动更改了Scope
下拉列表。
我首先点击References
并添加指向我的环境的指针
返回Parameters
标签,我点击连接管理器,然后我将配置CM_Project
连接管理器的ServerName属性以使用我的环境变量' s ServerName值。清楚吧?
配置ServerName后,我还配置了InitialCatalog
属性,但我没有使用环境变量的值,而是使用了"编辑值"选项(上面)来设置它。最终结果是我的属性现在看起来像这样。
现在,当我通过代理或手动执行来运行我的软件包时,它首先要提示我的是环境参考。我已经丢失了我对InitialCatalog的粗体,但是下划线仍然是ServerName属性。尽管如此,两者都是不同的值,我执行它,他们会选择正确的值。
所有这一切,我发现只存储整个ConnectionString值要容易得多。如果采用这种方法,您将观察到ServerName显示的值将显示您的设计时值,但这很好,因为ConnectionString作为一个整体将在运行时覆盖各个值。
我知道这是一个通用的答案,但我希望我能逐步找到你所缺少的东西。