【发布时间】:2011-09-02 19:42:58
【问题描述】:
我有一个 CSV 文件,其中包含分隔每一行的 {LF} 和一个日期列,日期格式为 "12/20/2010"(包括引号)
我的目标列是日期类型(不是日期时间)的 SQL Server 2008 数据库表
在我的平面文件连接管理器中,我将日期列配置为数据类型 date [DT_DATE],TextQualified 设置为 true,列分隔符设置为 {LF} (它是每一行的最后一列)。我将文本限定符设置为 "
当我尝试将其加载到 OLE 目标时,我收到以下错误
[TRN_DORPS [760]] 错误:SSIS 错误代码 DTS_E_OLEDBERROR。发生 OLE DB 错误。错误代码:0x80004005。 OLE DB 记录可用。来源:“Microsoft OLE DB Provider for SQL Server”Hresult:0x80004005 描述:“转换规范的字符值无效。”。 [TRN_DORPS [760]] 错误:输入“OLE DB 目标输入”(773) 上的输入列“CYCLE_DATE”(874) 存在错误。返回的列状态为:“由于可能丢失数据,无法转换该值。”。
如果我附加一个数据查看器,管道中的值是 2010-12-20 00:00:00.0000000 - 这个时间组件是导致问题的原因吗?我尝试使用(DT_DATE)(DT_DBDATE)[CYCLE_DATE] 去除时间组件,但无济于事,因为它在管道中保持不变
【问题讨论】:
-
@Siva - 另一个问题的好答案
标签: sql-server sql-server-2008 etl ssis