ssis - 使用变量作为条件拆分控件的输入
问题描述
可能是完全错误的方式 - 很高兴看到我的方式错误。
简而言之,我有 50 多个混合类型(csv 和 excel)的文件,我想将它们(每个文件都导入到自己的表中)导入 SQL 数据库。
在控制流中,我有一个返回的 sql 任务:
- 源数据文件名
- 源数据文件类型 (csv / xlsx)
- 我想命名要导入的表。
这个对象被传递给一个 Foreach 循环,该循环遍历这个对象并将这 3 个字段放入变量中。
然后我想说“如果文件类型变量是 csv,请执行平面文件导入。如果是 .xlsx,请执行 excel 导入”
因此,在我的每个容器中,我都有一个数据流任务。
我希望数据流任务首先检查文件类型变量,然后进行适当的导入。
我认为它必须在数据流中,因为在控制流中我看不到“If”样式控件?
但是我不知道如何将变量传递给条件拆分。
欢迎任何想法。
或者!- 只是有一个想法。最好的方法是获取所有 csv 文件类型的列表,在数据流中处理它们,然后获取所有 .xlsx 的列表并处理它们 - 所以我有:
- 获取 csv 文件名和表名
- 对于每个循环这些
- 从 csv 导入数据的数据流
- 获取 xlsx 文件名和表名
- 对于每一个通过这些
- 从 xlsx 导入数据的数据流。
只是看起来不那么优雅?
干杯
解决方案
推荐阅读
- java - 无法在 Spring Cloud Dataflow 上部署流
- asp.net - 错误:状态 500 - 带有 ajax 调用的 TempData ViewModel
- reactjs - React Native 中的 Firebase 事务
- node.js - 访问 api 端点时如何刷新页面(nuxt.js)
- java - 带有 @Entity 和 Counter 字段的 Cassandra 4.5 驱动程序问题
- javascript - react js中的移动友好卡
- r - 我怎样才能把情节条形图放在顶层
- mysql - 日志文件中的目标插入行数与数据库中的实际插入不同的可能原因是什么?
- ansible - 当条件总是评估为假时 Ansible
- c++ - 如何在没有循环的情况下用-1初始化整个数组