【发布时间】:2016-05-23 03:37:06
【问题描述】:
我有一个包含以下数据的 CSV 文件:
EmployeeCode,EmployeeName,EmployeeSalary,Date
101,raju,1000,2/2/2003
102,krish,100,3/4/2005
103,rishbh,320,12/9/2007
104,rani,4690,12/8/2008
105,olesia,2000,17/4/2009
106,olga,2000,12/6/2010
107,mellisa,3330,12/4/2011
我有一个叫做雇员的表:
EmployeeCode nvarchar(50)
EmployeeName nvarchar(50)
EmployeeSalary money
Date datetime
当我尝试使用 SSIS 包将此 CSV 文件加载到我的表中时,它给了我一个错误
1) [ADO NET 目标 [2]] 错误:期间发生异常 数据插入,提供者返回的消息是:给定的 来自数据源的 String 类型的值无法转换为类型 指定目标列的日期。
2) [SSIS.Pipeline] 错误:SSIS 错误代码 DTS_E_PROCESSINPUTFAILED。 组件“ADO NET Destination”(2) 上的 ProcessInput 方法失败 处理输入“ADO NET Destination”时出现错误代码 0xC020844B Input" (9)。已识别的组件从 处理输入法。该错误是特定于组件的,但 错误是致命的,将导致数据流任务停止运行。 在此之前可能会发布带有更多信息的错误消息 关于失败。
但是,如果我从 CSV 中删除日期列并尝试插入一切正常。日期列有什么问题,为什么不取值?
【问题讨论】:
-
无法将来自数据源的String类型的给定值转换为指定目标列的日期类型。您是否将日期列从
DT_STR(或DT_WSTR) 到其中一种数据数据类型?如果是这样,请发布您的操作方式 - 使用派生列转换?
标签: sql-server ssis business-intelligence msbi