如何在SSIS中将带逗号的字符串转换为十进制?

如何在SSIS中将带逗号的字符串转换为十进制?,ssis,Ssis,我有一个字符串price,末尾有逗号,我必须把它转换成十进制(10,2) 我试着用同样的精度和比例把它转换成数字,但仍然给了我潜在数据的误差 错误:Przychód的0xC02020C5,数据转换:将列“pr_kwota”(46)转换为列“pr_kwota的副本”(10)时,数据转换失败。转换返回状态值2和状态文本“由于数据可能丢失,无法转换该值。” 平面文件中的数据(str 50) 我想做的是: 您可能需要使用转换“派生列”而不是“数据转换”,问题可能是空格和逗号,因此您可以在派生列转换中使

我有一个字符串price,末尾有逗号,我必须把它转换成十进制(10,2)

我试着用同样的精度和比例把它转换成数字,但仍然给了我潜在数据的误差

错误:Przychód的0xC02020C5,数据转换:将列“pr_kwota”(46)转换为列“pr_kwota的副本”(10)时,数据转换失败。转换返回状态值2和状态文本“由于数据可能丢失,无法转换该值。”

平面文件中的数据(str 50)

我想做的是:

您可能需要使用转换“派生列”而不是“数据转换”,问题可能是空格和逗号,因此您可以在派生列转换中使用此函数:

(DT_NUMERIC,10,2)(REPLACE(REPLACE(pr_kwota," ",""),",",".")) 

不需要额外地将数据转换为DT_数值,在删除逗号和空格后,它会自动转换数据。谢谢您抽出时间,先生。