SSIS - 在处理之前从平面文件或 Excel 文件中读取单个标头记录

发布于 2024-07-13 22:42:51 字数 200 浏览 5 评论 0原文

有没有一种方法可以只读取文件的第一条记录,即读取头信息,以便可以决定是否处理文件的其余部分?

我知道,使用分割转换组件,可以编写一个表达式,该表达式将根据标题中的关键字忽略除标题之外的所有行。 我宁愿不走这条路,因为这样读取文件中的每条记录效率低下。

具体来说,是否有我可以实现的脚本组件逻辑来关闭文件 并在读取第一条记录后结束数据流?

Is there a method by which one can read just the first record of a file, i.e., to read header information so that a decision can be made whther or not to process the remainder of the file?

I know that with the split transformation component one can write an expression that will ignore all of the rows besides the header based on a key word in the header. I would rather not go that route as that is inefficiently reading every record in the file.

Specifically, is there script component logic that I can implement to close the file
and end the dataflow after the first record has been read?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

千紇 2024-07-20 22:42:51

请参阅这篇文章 来自托德·麦克德米德:

基本上,您将设置一个 Foreach
用于循环遍历文件的容器
你的目录。 在 Foreach 内部,
您将确定“文件类型” -
也许通过创建一个变量
冗长的表达
分解你的文件名并假设
“文件类型”值 - 然后传递
控制五个数据流之一
通过条件连接器。
(双击标准绿色
连接器,更改其评估
表达式和操作
约束,并将表达式设置为
是“文件类型变量=
".)然后每个数据流
选择一种“文件类型”。

See this post from Todd McDermid:

Basically, you would set up a Foreach
Container to loop over the files in
your directory. Inside the Foreach,
you would determine the "file type" -
perhaps by creating a variable with a
long-winded expression on it that
pulls apart your file name and assumes
the a "file type" value - then passes
control on to one of five Data Flows
via conditional connectors.
(Double-click on the standard green
connector, change it's Evaluation
Operation to Expression and
Constraint, and set the expression to
be "file_type_variable =
".) Then each Data Flow
picks apart one "file type".

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文