【问题标题】:Retrieving No. of rows being Written to CSV File检索写入 CSV 文件的行数
【发布时间】:2018-04-03 12:17:09
【问题描述】:

我有一个任务,我需要从来自两个视图的数据生成一个 CSV 文件,其中包括一个具有硬编码值的标题和一个位于 CSV 文件底部的具有这些字段的尾部 - Record_Type = E99、Row_count 和长度为 190 的空白字段。

我能够获得所需的输出文件,但我无法弄清楚如何检索 NO。来自两个 vie 的行并将其写入 CSV 底部的记录类型和空白字段之间,因为整行是带有 | 的预告片。划定的。

请帮我解决这个问题。

谢谢。

【问题讨论】:

  • 请说明您现在是如何做的,以便我们建议您在哪里进行增强。例如,您可以使用如下内容:select 'E99|' +cast((select count(*) from view1) + (select count(*) from view2) as varchar(10))+ '|'
  • 我为此使用 SSIS 2016,我为标题创建了一个视图,并为预告片记录创建了一个单独的视图,带有硬编码值,我在预告片中给出了计数 (1)查看行数。我得到了预期输出的预告片,但我真的需要这些观点吗?或者我可以在包运行时填充标题和拖尾记录(没有视图)??
  • 您当然可以将 SQL 直接输入到源组件中。这只是取决于你想如何分割它

标签: sql-server csv tsql ssis ssms


【解决方案1】:

我的建议:

  1. 我假设您正在使用 SSIS 包来解决此问题。
  2. 创建一个 SQL 暂存表来存储要导出到 CSV 文件中的内容。您可以使用存储过程通过执行它来截断和重新填充此临时表。通过在 SSIS 包中执行 SQL 任务来执行此存储过程
  3. 使用数据流任务将数据从临时表导出到 CSV 文件。输入将是 SQL 暂存表,输出将是带有逗号 (,) 分隔符的平面文件。

希望对你有帮助

【讨论】:

  • 兄弟,这不是我要找的。​​span>
猜你喜欢
  • 1970-01-01
  • 2021-05-07
  • 1970-01-01
  • 1970-01-01
  • 2014-01-10
  • 1970-01-01
  • 1970-01-01
  • 2017-05-04
相关资源
最近更新 更多