例子
例如代码输出的money值是1.4和0.66 ,但插入数据库的时候却变了1.4000000000000000001,和0.6599999999999

![]()
原因
出现该情况,肯定就是数据类型出问题了,我检查发现,图1的money数据类型是float,但我数据库的money字段数据类型是varchar,原因这是这两类型不一致导致
解决
修改了插入数据类型和数据库一样,就解决了
浮点数精度问题与解决
本文探讨了在代码中使用浮点数时遇到的精度问题,特别是在将数据插入数据库时,由于数据类型不匹配导致的数值变化。通过对比float和varchar类型,解释了问题的根源,并提供了解决方案,即确保数据类型的一致性。
例如代码输出的money值是1.4和0.66 ,但插入数据库的时候却变了1.4000000000000000001,和0.6599999999999

![]()
出现该情况,肯定就是数据类型出问题了,我检查发现,图1的money数据类型是float,但我数据库的money字段数据类型是varchar,原因这是这两类型不一致导致
修改了插入数据类型和数据库一样,就解决了
1386

被折叠的 条评论
为什么被折叠?