如果我再把头撞在桌子上 1 次,我可能会永远消失。
资料来源:Excel
数据:2012-10-05T11:14:00
转换:
2012-10-05T11:14:00 在 Excel 中到字符串 [DT_STR]
目的地:SQL
列数据类型:日期时间
我不断收到以下错误:
[PostBindInspectionsBucket [20]] 错误:SSIS 错误代码 DTS_E_OLEDBERROR。发生 OLE DB 错误。错误代码:0x80004005。OLE DB 记录可用。来源:“Microsoft SQL Server Native Client 10.0” Hresult:0x80004005 描述:“转换规范的字符值无效”。
[PostBindInspectionsBucket [20]] 错误:输入“OLE DB 目标输入”(33) 上的输入列“RequestTimestamp 的副本”(112) 存在错误。返回的列状态为:“由于可能丢失数据,无法转换该值。”。
[PostBindInspectionsBucket [20]] 错误:SSIS 错误代码 DTS_E_INDUCEDTRANSFORMFAILUREONERROR。“输入“OLE DB 目标输入”(33)”失败,因为发生错误代码 0xC0209077,并且“输入“OLE DB 目标输入”(33)”上的错误行处置指定错误失败。指定组件的指定对象发生错误。在此之前可能会发布错误消息,其中包含有关失败的更多信息。
[SSIS.Pipeline] 错误:SSIS 错误代码 DTS_E_PROCESSINPUTFAILED。处理输入“OLE DB 目标输入”(33) 时,组件“PostBindInspectionsBucket”(20) 上的 ProcessInput 方法失败,错误代码为 0xC0209029。已识别的组件从 ProcessInput 方法返回错误。该错误是特定于组件的,但该错误是致命的,将导致数据流任务停止运行。在此之前可能会发布错误消息,其中包含有关失败的更多信息。
我究竟做错了什么?来自 Excel 的格式是有效的日期时间格式。
我创建了一个包含“日期时间”类型列的表,然后我将其粘贴到“2012-10-05T11:14:00”中,它工作正常。
我也跑了一个
SELECT ISDATE('2012-10-05T11:14:00')
它返回 1,这意味着它是 SQL 中的有效日期时间。
有谁知道可能是什么问题?