执行我的包,我看到以下错误。源(平面文件)中的
EMP ID
是 DT_STR(50)
并将其加载到表中:
EMP_ID int not null column
使用数据转换任务,我将其转换为四字节有符号整数
但约伯失败了。
描述:转换列“EMP ID”时数据转换失败 (105) 至“EMP ID”列(25)。 转换返回状态值2 和状态文本“该值无法转换,因为 潜在的数据丢失。”。结束错误错误:2019-09-16 11:37:28.53
代码:0xC0209029 来源:数据流任务 1 数据转换 0 - 0 [2] 说明:SSIS错误代码 DTS_E_INDUCEDTRANSFORMFAILUREONERROR。 “数据转换 .Outputs[数据转换输出].Columns[EMP ID]”因错误而失败 发生代码 0xC020907F,并且“数据”上的错误行处理 转换 0 - 0.输出[数据转换输出].列[EMP ID]" 指定错误失败。指定对象发生错误 指定组件的。 之前可能发布过错误信息 这包含有关失败的更多信息。 结束错误错误: 2019-09-16 11:37:28.53 代码:0xC0047022 来源:数据流任务 SSIS.Pipeline 描述:SSIS 错误代码 DTS_E_PROCESSINPUTFAILED。 组件“Data”上的 ProcessInput 方法 处理时转换 (2) 失败,错误代码为 0xC0209029 输入“数据转换输入”(3)。返回识别的组件 来自 ProcessInput 方法的错误。该错误特定于 组件,但该错误是致命的,将导致数据流任务 停止运行。 在此之前可能已发布错误消息 有关失败的更多信息。 结束错误 DTExec:包 执行返回 DTSER_FAILURE (1)。 开始时间:上午 11:37:27 完成时间:上午 11:37:28 已用时间:0.797 秒。 包执行 失败的。 该步骤失败。
我正在使用数据转换做类似的事情,并且收到类似的错误消息。 我想报告我认为 ssis 中的错误。 我正在读取 .csv 文件进行数据转换,然后将其分配到十进制(18.8)ms sql 列中。 .csv 中的所有字段都用双引号 (") 括起来。在分配给数据库之前,双引号已被删除。数据转换步骤将问题列分配给 dt_numeric 18, 8 值。这在180k 行输入文件,但数字列中包含“0”的行导致了问题。如果我删除了包含“0”的行,则该行有效。如果我将该行更改为 0.0,则该行有效。 “1”它有效。对我来说这是 ssis 中的一个错误,我可以随时在我们的环境中使用 vs 2019 构建的 ssis 包来复制这个问题。