2016-01-06 24 views
0

我需要添加如下值列型双MySQL的列类型“双” - 后小数

1.0 
1.23 
12.345 
1234.5678 
123456.1234567891 

当我尝试插入123456.1234567891删除数字,它插入只123456.123456789(“1”最后丢失)

我该如何解决这个问题?

回答

2

双精度只有about 16 digits(52位)的精度。我的猜测是,最终的'1'超出了精度的范围,并且正在迷失。如果不移动到其他类型,您将无法存储它。

+0

我应该使用哪种类型? – Jeff

+0

不幸的是,您必须将其作为字符串存储在数据库中。没有其他数据类型将存储小数到您需要的精度。 – Draco18s

+3

@ Draco18s:MySQL数据类型**'DECIMAL(65,30)'**在小数点后最多可以存储30位数字。 – spencer7593