错误:0xC0202009在数据流任务,OLE DB目标[43]:SSIS错误代码DTS_E_OLEDBERROR.发生OLE DB错误.错误代码:0x80040E21

Tas*_*sto 6 ssis bids ssis-2012

我的源是TXT平面文件源,目标是OLE DB类型.(见图)

在此输入图像描述

在Code Project上找到了一个非常基础的教程来创建一个包.我完成了步骤但是在调试时我得到一个奇怪的错误(下图):

有人可以解释这个错误吗?我花了几个小时在网上搜索错误.

SSIS包"C:\ Users\USRNAME\Desktop\Projects\DataGeneratorSsis\DataGeneratorSsis\Package.dtsx"开始.信息:数据流任务中的0x4004300A,SSIS.Pipeline:验证阶段正在开始.信息:数据流任务中的0x4004300A,SSIS.Pipeline:验证阶段正在开始.警告:数据流任务中的0x80047076,SSIS.Pipeline:输出"平面文件源输出"(6)上的输出列"intApplication"(7)和组件"平面文件源"(2)随后未在数据流中使用任务.删除此未使用的输出列可以提高数据流任务性能.信息:0x40043006在数据流任务,SSIS.Pipeline:准备执行阶段开始.信息:0x40043007在数据流任务,SSIS.Pipeline:预执行阶段开始.信息: 2:文件"C:\ Users\USRNAME\Desktop\ddd.txt"的处理已经开始.信息:数据流任务中的0x4004300C,SSIS.Pipeline:执行阶段开始.信息:0x402090DE数据流任务,平面文件源2:为文件"C:\ Users\USRNAME\Desktop\ddd.txt"处理的数据行总数为2.错误:数据流任务中的0xC0202009,OLE DB目标[43]:SSIS错误代码DTS_E_OLEDBERROR.发生OLE DB错误.错误代码:0x80040E21.OLE DB记录可用.来源:"Microsoft SQL Server Native Client 11.0"Hresult:0x80040E21说明:"多步OLE DB操作生成错误.检查每个OLE DB状态值,如果可用.没有工作.".错误:数据流任务中的0xC020901C,OLE DB目标[43]:OLE DB Destination.Inputs [OLE DB目标输入].OLE DB Destination.Inputs [OLE DB目标输入]上的[OLE ID] .Columns [AppID]出错.返回的列状态为:"由于可能丢失数据,无法转换该值." 错误:0xC0209029在数据流任务,OLE DB目标[43]:SSIS错误代码DTS_E_INDUCEDTRANSFORMFAILUREONERROR."OLE DB Destination.Inputs [OLE DB目标输入]"失败,因为发生错误代码0xC0209077,并且"OLE DB Destination.Inputs [OLE DB目标输入]"上的错误行处置指定错误时失败.指定组件的指定对象发生错误.在此之前可能会发布错误消息,其中包含有关失败的更多信息.错误:数据流任务中的0xC0047022,SSIS.Pipeline:SSIS错误代码DTS_E_PROCESSINPUTFAILED.组件"OLE DB Destination"(43)上的ProcessInput方法在处理输入"OLE DB Destination Input"(56)时失败,错误代码为0xC0209029.标识的组件从ProcessInput方法返回错误.该错误特定于组件,但错误是致命的,将导致数据流任务停止运行.在此之前可能会发布错误消息,其中包含有关失败的更多信息.信息:0x40043008在数据流任务,SSIS.Pipeline:后执行阶段开始.信息:0x402090DD在数据流任务,平面文件源2:文件"C:\ Users\USRNAME\Desktop\ddd.txt"的处理已结束.信息:0x4004300B在数据流任务,SSIS.Pipeline:"OLE DB目标"写入0行.信息:数据流任务中的0x40043009,SSIS.Pipeline:清理阶段正在开始.任务失败:数据流任务警告:包时的0x80019002:SSIS警告代码DTS_W_MAXIMUMERRORCOUNTREACHED.执行方法成功,但引发的错误数(4)达到允许的最大值(1); 导致失败.当错误数达到MaximumErrorCount中指定的数量时,会发生这种情况.更改MaximumErrorCount或修复错误.SSIS包"C:\ Users\USRNAME\Desktop\Projects\DataGeneratorSsis\DataGeneratorSsis\Package.dtsx"完成:失败.

相关的错误消息

OLE DB Destination.Inputs [OLE DB目标输入]上的错误.OLE DB Destination.Inputs [OLE DB目标输入]上的[AppID].返回的列状态为:"由于可能丢失数据,无法转换该值."

Kyl*_*ale 9

因此,发生此错误是因为您在AppID列的源中有一个值,该值对目标中的AppID列无效.

一些可能的例子:

  • 您试图在8个字符的字段中插入10个字符的值.
  • 您正在尝试将大于127的值插入tinyint字段.
  • 您试图将值6.4578插入到十进制(5,1)字段中.

SSIS由元数据控制,它期望您正确设置输入和输出,使两者的可接受值都在同一范围内.