我一直在做一个项目,在数据库表中插入了很多数字。现在我完成了代码,我正在检查值是否有错误,我注意到我的值 3075277 在插入数据库时将转换为 3075280,而 3075255 将转换为 3075260。
列类型为 Float。我应该更改什么以禁用舍入?这个连小数都没有,为什么要四舍五入?我使用默认选项,仅将排序规则更改为 utf8_general_ci,并将类型更改为 varchar,部分长度为 lenght,其他部分为 float。
最佳答案
此问题与 MySQL 有关,与 Phpmyadmin 无关。
FLOAT
具有 6-7 位有效数字的精度,正如您在杂乱值中看到的那样。 “有效数字”是指从任何地方开始:
1234567xxxx.
12345.67xxx
1.234567xxx
0.0000001234567xxx
也就是说 xxx
可能是零或某种“噪音”,而不是您放入列中的原始值。
DOUBLE
为您提供大约 16 位有效数字。
DECIMAL(9,0)
为您提供小数点左侧的 9 位数字,之后没有。有点像 INT
。
DECIMAL(9,4)
为您提供小数点左侧的 5 (9-4) 位数字; 4 之后。
您要存储哪些类型的数字?钱?科学测量?天文距离? DT的财富?
关于phpMyAdmin float 禁用轮数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41982495/