【发布时间】:2018-05-26 12:11:41
【问题描述】:
这是我的文件夹设置。
这是文件设置
这个想法是遍历文件夹并将 FileA 内容放到数据库上的 Table FileA.dbo 中(还有 FileB、FileC 等)。 FileName 结构在所有文件夹中都是相同的。
我有这个 ssis 包,我在其中使用 foreachloop-> 数据流解析文件夹。
我已经检查了我为获取文件名而制定的算法是否有效
REVERSE(Substring(Reverse( @[User::FileName] ),5,LEN( @[User::FileName] ))) == "FileA"
它解析出 .txt 扩展名。下面是我拥有的 foreach 循环的设置。
要启动整个程序包,我在文件夹中添加了 .txt 文件,并创建了 foreach 容器循环子文件夹。
因为,我并不是真正的 SSIS 包开发人员,所以这是我能做的最好的研究。我遇到的问题是,它似乎部分工作。
这些快照是我所拥有的场景的模型,实际上我有 200 多个文件夹,其中包含 50 个文本文件,每个文件都指定将内容转储到相应的命名表中。
但是我在包成功执行后看到的总行数非常少而且不可能是正确的。 无论如何要获得它的文件夹数的计数/列表穿越了。还有,我是不是做错了什么?
理想情况下,我希望不必从 .txt 文件开始,而只需将整个内容转到文件夹,获取文件名(我认为我有一个工作代码)并转储所有信息到 OLEDB 目的地。
非常感谢任何帮助,资源链接。
【问题讨论】:
-
是的,这可以仅使用一个具有动态源和目标的数据流任务来完成。我会用截图给出详细的答案,但是你要等一段时间,因为它需要时间
-
非常感谢@Hadi。我等着呢
标签: sql-server ssis etl flatfilesource oledbdestination