sql-server - 每个部署配置的 SSIS 变量值
问题描述
我正在使用 Visual Studio 创建一个非常简单的 ETL 包,它读取一些 Excel 文件并将其上传到数据库中。我们配置了一个变量,其中包含源文件的位置。有两个环境:开发(开发)和生产(销售)。
在 location 变量中可以保持:
- \sharedrive\生产或
- \sharedrive\开发
理想情况下,我希望通过部署值(开发/测试)设置此变量。
我查看了部署配置,但找不到可以为不同部署设置这些变量值的位置。
谁能指出我正确的方向?
谢谢!
解决方案
改为使用项目参数来保存源文件的位置。下面是这个过程的概述。
- 在项目名称下方的解决方案资源管理器中打开 Projects.params 窗口。在此处创建一个字符串参数来保存源文件位置。
- 在此之后,通过转到Build > Configuration Manager 从 SSDT 的顶部菜单打开 Configuration Manager。在这里,通过选择Active Solution Configuration下的New ,为每个环境、开发和生产创建一个新的解决方案配置。
- 现在回到 Project Parameters 窗口,通过按 Name 字段右上方的第三个按钮将文件位置的参数添加到配置中(此按钮看起来像一个矩形,旁边有一个扳手)。在出现的窗口上按添加并选择文件位置参数。然后编辑每个配置的值,例如生产配置将包含“\sharedrive\production”。
- 在此之后,您可以通过从 SSDT 中绿色箭头和“开始”按钮左侧的第二个下拉菜单中选择适当的配置来在这些配置之间切换。每当将项目部署到 SSISDB 时,都将使用 SSDT 中正在使用的配置中的值。
推荐阅读
- python - 阅读浏览器图像并单击而不使用硒?
- r - DT R Shiny - 添加标题边框
- c# - C# 嵌套属性
- c - 语句 `int val = (++i > ++j) 吗?++i : ++j;` 调用未定义的行为?
- objective-c - NSCollectionView visibleRect 属性
- java - 为什么ArrayList有clone方法
- postgresql - PostgreSQL - 如何将 Base64 图像字符串插入 BYTEA 列?
- c - 将相同的字符串存储在两种不同的结构类型中
- c# - C# 我需要在单独的线程上读取标准输出吗?
- java - 包 javafx.util 不存在