SSIS Destination 组件使用Fast-Load mode出错
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSIS Destination 组件使用Fast-Load mode出错相关的知识,希望对你有一定的参考价值。
查看一个Package的历史Message 数据,发现 DataFlow Task 经常出错,错误信息的Description是:
Description: "While reading current row from host, a premature end-of-message was encountered--an incoming data stream was interrupted when the server expected to see more data. The host program may have terminated. Ensure that you are using a supported client application programming interface (API).".
错误原因是:使用Fast-Load 将数据导入到Nvarchar(max)或varchar(max) column中时,会出现错误。
当Destination组件使用Fast-Load 模式时,实际上,SQL Server 使用bulk insert 来插入数据。如果Targe table 存在 nvarchar(max) 或 varchar(max) column,SSIS 使用bulk insert 会出现错误。
在《Error in SSIS Data Flow when using Fast Load》中,说到使用Computed Column 也会导致 Fast-Load 出现错误,经本人测试,不会出现错误。
参考doc:
Bulk Load Fails with nvarchar(max)
Unable to Bulk Insert with NVARCHAR(MAX) Column
Bulk load error: While reading current row from host, a premature end-of-message was encountered.
以上是关于SSIS Destination 组件使用Fast-Load mode出错的主要内容,如果未能解决你的问题,请参考以下文章
SSIS 条件拆分错误 - 数据类型 DT_BYTES 不能与二元运算符“==”一起使用