R R_Baggio Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-11 #1 我用 INTERBASE 做数据库,但我用 FLOAT 插入数据时出现问题, 如插入23。4会变成23。3900XXX等,该怎么解决
C Crab Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-11 #4 设为 numbric 类型,可设定小数位数。参看 employee 表的设定。
A Another_eYes Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-11 #5 很简单, 插入23.400000000001
T tianrei Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-12 #7 我觉得你把FLOAT 型转化成STRING插入数据库,使用时用程序给转换过来!
S szjj Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-12 #10 问题的关键是于使用Sum时的累加误差。必须要让那个字段就是两位小数。 有招吗?
L lop Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-12 #12 数据类型不要用Float,因为Float是一个近似值数据类型。 将数据类型定义为NUMERIC(15,x),其中X为小数位数,这 样就不会有你所说的问题了。
H hwk2000 Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-12 #13 可以使用 strtofloat(formatfloat('0.00',23.4))格式化。
F Fuweng Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-12 #14 浮点数尽量用double类型,而少用float类型 字符串-->浮点数 AnsiString Str = "11.12"; double Num = StrToFloat(Str); 浮点数-->字符串 double Num = 11.12; AnsiString Str = FloatToStr(Num); 浮点数之间的运算可用下列方法控制: double a1 = 11.12; double a2 = AnsiString::FormatFloat("0.00",a1).ToDouble();
浮点数尽量用double类型,而少用float类型 字符串-->浮点数 AnsiString Str = "11.12"; double Num = StrToFloat(Str); 浮点数-->字符串 double Num = 11.12; AnsiString Str = FloatToStr(Num); 浮点数之间的运算可用下列方法控制: double a1 = 11.12; double a2 = AnsiString::FormatFloat("0.00",a1).ToDouble();
W wrench Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-13 #15 正常 浮点数肯定会有误差的 用Double或者Currency精度高点