不幸的是,没有人真正了解这个源数据库,所以当我被告知传入的数据是FLOAT时,看起来并非如此。
我有一个带有某种数值数据类型的传入字段,其值为101.15000000000001
我需要将它转换为numeric(6,4)类型的SQL目标列。问题是无论我尝试什么转换,我都会继续获得类型转换错误(0x80004005或0xc0049064)。我目前对该领域的表达是:
(DT_NUMERIC,6,4)MY_FIELD
当我尝试使用此类型在SQL中转换值时,我得到算术溢出错误,所以我尝试了
(DT_NUMERIC,6,2)MY_FIELD
这有效地在SQL中截断,但是,我仍然在SSIS中出错。关于如何截断或舍入此值并将其转换为数字(6,4)数据类型的任何想法?
答案 0 :(得分:0)
在两个操作中尝试:
string x = my_field
float y = (float)x
或float.Parse(x)