我有一个要保存到 SQL 表的平面文件。我想计算插入的行并将计数写入另一个表。
问问题
6562 次
1 回答
7
简单的答案是创建一个 SSIS 变量并将 RowCount 转换拖放到您的数据流中。
创建变量
在控制流上,单击背景。不要单击任何任务,否则您的变量将在错误的范围内创建(此警告不适用于 2012)。右键单击并选择变量。在“变量”窗口中,单击“添加”按钮并将其命名为 RowCounts,数据类型为 Int32(除非您需要 Int64(超过 2M 行))
添加行计数转换
在数据流中,在数据源之后添加行计数转换。将其配置为使用我们在上面创建的变量。生成的数据流可能看起来像这样
需要注意的是,行计数组件在数据流完成之前不会将行计数分配给@User::RowCount 变量。
保存行计数值
数据流完成后,您需要使用控制流中的执行 SQL 任务将值写入表中。
执行 SQL 任务看起来像这样,具体取决于您的表被定义为什么。
INSERT INTO
dbo.RowCounts
(
rowcounts
)
SELECT
? AS rowcounts
在“参数映射”选项卡中,它看起来像
User::RowCount Input Long 0 -1
于 2012-06-20T15:47:57.253 回答