首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误: 0xC0202009在数据流任务,OLE DB目的地[43]:SSIS错误代码DTS_E_OLEDBERROR。发生了OLE DB错误。错误代码: 0x80040E21

错误: 0xC0202009在数据流任务,OLE DB目的地[43]:SSIS错误代码DTS_E_OLEDBERROR。发生了OLE DB错误。错误代码: 0x80040E21
EN

Stack Overflow用户
提问于 2013-09-30 11:42:44
回答 5查看 137.7K关注 0票数 7

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

我找到了一个非常适合创建包的代码项目基础教程。我完成了这些步骤,但是在调试时出现了一个奇怪的错误(如下面所示):

有人能解释一下这个错误吗?我花了几个小时在网上搜索错误。

SSIS包"C:\Users\USRNAME\Desktop\Projects\DataGeneratorSsis\DataGeneratorSsis\Package.dtsx“启动。信息: 0x4004300A在数据流任务,SSIS.Pipeline:验证阶段已经开始。信息: 0x4004300A在数据流任务,SSIS.Pipeline:验证阶段已经开始。警告: 0x80047076在数据流任务中,SSIS.Pipeline:输出“平面文件源输出”(6)和组件“平面文件源”(2)上的输出列"intApplication“(7)随后不在数据流任务中使用。删除此未使用的输出列可以提高数据流任务的性能。信息: 0x40043006在数据流任务,SSIS.Pipeline:准备执行阶段正在开始。信息: 0x40043007在数据流任务,SSIS.Pipeline:预执行阶段已经开始.信息: 0x402090DC在数据流任务,平面文件源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记录是可用的。来源:“11.0”H结果: 0x80040E21描述:“多步OLE DB操作生成错误。如果可用,请检查每个OLE DB状态值。没有完成任何工作。”错误: 0xC020901C在数据流任务,OLE DB目的地43: OLE DB Destination.InputsOLE DB目的地Input.ColumnsAppID在OLE DB Destination.InputsOLE DB目的地输入上出错。返回的列状态是:“由于数据可能丢失,无法转换值”。错误: 0xC0209029在数据流任务,OLE DB目的地43: SSIS错误代码DTS_E_INDUCEDTRANSFORMFAILUREONERROR。由于发生了错误代码0xC0209077,"OLE DB Destination.InputsOLE DB目标输入“失败,而"OLE DB Destination.InputsOLE DB目标输入”上的错误行处理指定错误失败。指定组件的指定对象上发生错误。在此之前可能会发布错误消息,并提供有关故障的更多信息。错误: 0xC0047022在数据流任务,SSIS.Pipeline: SSIS错误代码DTS_E_PROCESSINPUTFAILED。组件"OLE DB目标“(43)上的ProcessInput方法失败,错误代码0xC0209029在处理输入"OLE DB目标输入”(56)时失败。标识的组件从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.InputsOLE DB目的地Input.ColumnsAppID在OLE Destination.InputsOLE DB目的地输入中出错。返回的列状态是:“由于数据的潜在丢失,无法转换值。”

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-09-30 15:47:03

因此,发生此错误是因为您的源中AppID列的值对目标中的AppID列无效。

一些可能的例子:

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

SSIS由元数据管理,它希望您已经正确地设置了输入和输出,以便两者的可接受值都在相同的范围内。

票数 12
EN

Stack Overflow用户

发布于 2013-10-03 15:06:01

这通常是由截断引起的(传入值太大,无法适应目标列)。不幸的是,SSIS不会告诉您违规列的名称。我使用第三方组件来获取以下信息:http://naseermuhammed.wordpress.com/tips-tricks/getting-error-column-name-in-ssis/

票数 1
EN

Stack Overflow用户

发布于 2014-12-05 01:50:14

如果查询以不寻常的方式失败(例如:子查询在oracle oledb连接中返回多行),也可以从select组件接收此错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19093339

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档