尽管使用数据转换和准确的目标数据类型,SSIS 数据转换错误

SSIS Data Conversion Error despite using Data Conversion and accurate destination Datatype

我 运行 我的包裹出现以下错误:

[Data Conversion [2]] Error: Data conversion failed while converting column "FieldName" (373) to column "Copy of FieldName" (110).

The conversion returned status value 2 and status text "The value could not be converted because of a potential loss of data.".

但是,我不明白为什么。我仔细检查了输入和输出以验证它们是否有意义并且符合我的预期。我还检查了 excel 文件中列中的所有原始数据。

我的包裹设置: Excel 数据源提供数据转换,然后是派生列,最后输出到 Ole DB 目标 (sql)

我做了什么:

我打开了数据转换的高级编辑器。我确认传入的数据类型是 DT_STR,这是可以预期的,因为未正确识别源数据类型。它实际上是我 excel 文件中的一个日期。我确认数据转换输出列是我设置的 database timestamp [DT_DBTIMESTAMP]。我的目的地 table 的 DateTime 数据类型为 FieldName

我错过了什么?

我认为这是一个日期格式问题,请检查该列是否不包含空字符串或 NULL 值。

同时检查值是否类似于 yyyy-MM-dd HH:mm:ss 日期格式。

要阅读有关 SSIS 数据类型的更多信息,请查看以下文章:

此外,在将字符串值转换为日期时间时,如果值的格式正确,只需将源列映射到目标,无需数据转换转换 and they will be implicitly converted