Sql 在SSIS中转换数据类型
我得到一个输入CSV文件,我必须上传到我的oracle数据库 下面是一些示例数据Sql 在SSIS中转换数据类型,sql,sql-server,ssis,ssis-data-types,Sql,Sql Server,Ssis,Ssis Data Types,我得到一个输入CSV文件,我必须上传到我的oracle数据库 下面是一些示例数据 ContractId, Date, HourEnding, ReconciledAmount 13860,"01-mar-2010",1,-.003 13860,"01-mar-2010",2,.923 13860,"01-mar-2010",3,2.542 我必须将传入列转换为DB_TIMESTAMP(以匹配目标表中的结构) 但是当我使用数据转换进行转换时,会出现一个错误 将列“日期”(126)转换为列“日期”
ContractId, Date, HourEnding, ReconciledAmount
13860,"01-mar-2010",1,-.003
13860,"01-mar-2010",2,.923
13860,"01-mar-2010",3,2.542
我必须将传入列转换为DB_TIMESTAMP(以匹配目标表中的结构)
但是当我使用数据转换
进行转换时,会出现一个错误
将列“日期”(126)转换为列“日期”(496)时,数据转换失败。转换返回状态值2和状态文本“由于数据可能丢失,无法转换该值。
如何正确转换此数据?问题在于文件中的引号[“]。 您应该从文件中删除它们,或者在
数据转换
组件之前添加一个派生列
,以删除带有表达式的“
替换([TextDateColumn],“\”,”)问题在于文件中的引号[”]。 您应该从文件中删除它们,或者在
数据转换
组件之前添加一个派生列
,以删除带有表达式的“
替换([TextDateColumn],“\”,”)在这种情况下,您可以将平面文件连接中的文本限定符更改为单双引号(“) 这将导致SSI解释
13860,"01-mar-2010",1,-.003
作为
此外,如果数据中的任何嵌入逗号也使用引号,则还可以捕获这些逗号。在这种情况下,您可以将平面文件连接中的文本限定符更改为单双引号(“) 这将导致SSI解释
13860,"01-mar-2010",1,-.003
作为
这还增加了一个额外的好处,即如果数据中的任何嵌入逗号也带有引号,则可以捕获它们