我使用一个平面文件作为源,其中有几列属于Date格式,我已将所有数据放入预定义的SQL Server表中。
实施例: -
平面文件
CaseNO|CaseType|CDate 1 |ORG |1\12\2012 2 |PGD |3\3\2011
这里当我用数据查看器检查时,它看起来像2012-12-1 00:00:00.0000000。但OLE DB连接会产生以下错误。
[OLE DB Destination [7546]] Error: There was an error with input column
"CDate" (8799) on input "OLE DB Destination Input" (7559). The column status
returned was: "The value could not be converted because of a potential loss of data.".
请指导我......感谢你的帮助。
343
答案 0 :(得分:0)
这可能是因为反斜杠。在转换之前尝试用“/”替换“\”。
这也可能是日期格式问题。根据整理等设置,“1/2/2012”可以解释为1月2日或2月1日。这不会导致问题,但是像“1/31/2012”之类的东西可能会导致错误的类型转换错误整理,因为没有一个月31。
答案 1 :(得分:0)
看起来您已经将数据暂存到sql server表中。使用SQL命令而不是选择OLEDB源中的表。写下查询如下并映射到目的地。
SELECT Id,CaseType,convert(datetime,CDATE,101)as Cdate from
如果直接使用平面文件加载到目标表。你应该使用派生列转换来解析它,提到格式[dd / mm / yyyy]并转换为datatime。
谢谢, Gowdhaman