这应该相当简单,但我不知道为什么当我在数据流任务中使用ROW COUNT转换时,我将Row Count作为零。我创建了一个包含范围的变量(NoOfRecords)。
在行计数转换中将变量名设置为变量NoOfRecords。
使用派生列分配行计数。
包运行成功并显示记录数265
但Derived列显示记录计数为0而不是265行。
答案 0 :(得分:3)
在“行计数”之后,在“聚合任务”属性的“操作”选项卡中添加“聚合塔克斯”并选择“计数”选项。 然后,您可以使用行计数变量进行进一步操作,其中包含输入文件的总行数。
答案 1 :(得分:2)
在行传递后处理行计数。
您在通过“派生列”步骤时将变量添加到每一行,但此时,变量尚未更新(因为它在所有行都通过后发生) - 因此值0是正确的。
你 - 可以通过在派生之前使用异步任务来实现这一目标(但我不确定这是否会起作用,它只是突然出现在我的脑海中)。在Derived之前添加Sort或Aggregate步骤,然后重试。
答案 2 :(得分:0)
我在查询中将其用作获取行数的有效方法:
将(所有SnapshotDate)超过()计为nRowCount
答案 3 :(得分:0)
这是记录适用于我的情况的行的成功技术。 场景是我要记录在表之间迁移的行。在退出数据流之前,不会填充RowCount。 [控制流] 1.数据流任务 一种。读取原始数据-源代码控制 b。添加RowCount转换。将a链接到b。 右键单击RowCount并映射到UserVariable(int64) C。添加目标控件以加载表。 d。将b链接到c。 2.将执行SQL任务添加到ControlFlow。右键单击,编辑 INSERT SQL语句:插入LogTable(rowcount)值(?) 参数映射 可变方向数据类型ParameterName ParameterSize 用户:: RowCount输入长0 -1