【发布时间】:2020-03-26 03:50:25
【问题描述】:
我正在构建一个网络应用程序,并且在其中的某些部分中,一位老师插入了科学实验的预期结果。这些结果必须非常准确,它们可能会像这样0.4933546522886728。经过一段时间的搜索,FLOAT 似乎是将这些答案存储在数据库中的正确数据类型。众所周知,mysql 中的FLOAT 列可以这样声明FLOAT(n, d),其中n 是数字的总位数,d 是小数点后的位数。所以,我不知道老师会输入多少位数。那么,如果我这样声明它会发生什么FLOAT。让我想到这一点的是 mysql 文档中的 quote。
为了获得最大的可移植性,需要存储近似数值数据值的代码应使用 FLOAT 或 DOUBLE PRECISION,不指定精度或位数。
在FLOAT 列中输入的最大值和最小值是多少。
我也想过用VARCHAR存储老师输入的确切数字,然后根据学生输入的数据库中数字的性质与正确答案进行比较将被操纵匹配另一个号码。
例如,如果老师输入1.23451,学生输入1.4235123,我的代码将变为1.42351。
【问题讨论】:
-
0.4933546522886728 看起来像 DOUBLE。
标签: mysql database floating-point sqldatatypes