如何通过ssis包加载N条记录?

时间:2018-05-28 06:06:37

标签: sql-server ssis ssis-2012 ssis-2008

我必须通过SSIS包将三天的数据从源服务器加载到目标服务器。我计算了这三天的总记录是31000左右。

enter image description here

在源表中我使用以下sql查询: -

选择id,customer_id,deleted_date,lc_contact_date,lc_lead_date,lc_customer_date, customer_dates WHERE(modified_date&gt;&#39; 2018-05-25 13:32:36&#39;和modified_date&lt; = CURRENT_DATE-1)中的is_blacklisted_date,modified_date,modified_by,cd_mdm1,cd_mdm2,cd_mdm3,cd_mdm4,cd_mdm5; < / p>

将数据发送到目标表。

查询是正确的,它有大约31000个计数。但错误是在使用包时它没有将数据从源传输到目标。如果我使用约600左右,即下面查询其工作正常。 select id,customer_id,deleted_date,lc_contact_date,lc_lead_date,lc_customer_date, 来自customer_dates的is_blacklisted_date,modified_date,modified_by,cd_mdm1,cd_mdm2,cd_mdm3,cd_mdm4,cd_mdm5 WHERE(modified_date&gt;&#39; 2018-05-25 13:32:36&#39; and modified_date&lt; = CURRENT_DATE-1)limit 600 ;

任何人都可以帮我解决我在ssis包中嵌入的设置或任何内容吗?

1 个答案:

答案 0 :(得分:1)

我已经使用SSIS加载了数百万行 - 工具中没有行限制。

我最好的猜测是,数据转换组件中的某些内容无法转换,导致程序包出错。

确认 *删除现有的数据查看器(可选) *将派生列添加到现有数据转换组件的错误路径中 *在数据转换和派生列之间添加数据查看器。

现在,所有失败的行都会定向到您的查看器。此时,您可以确定行失败指定转换的原因,然后根据需要进行清理。