mysql往数据库插入float类型的数据 为什么数字不对?

insertintotable2(p_id,f_1,f_2)values(1,0.0,0.027592998);在数据库看到的结果是:怎么保证插入是什么数据库就显示什么呢... insert into table2(p_id,f_1,f_2)values(1, 0.0, 0.027592998);
在数据库看到的结果是:

怎么保证插入是什么 数据库就显示什么呢 怎么解决
展开
 我来答
帐号已注销
2020-02-13 · TA获得超过77万个赞
知道小有建树答主
回答量:4168
采纳率:93%
帮助的人:163万
展开全部

float类型可以存浮点数,但是float有缺点,当不指定小数位数的时候,就会出现小数位数与想要的不一致,导致“报错”。在创建浮点类型的时候必须指定小数位数,float(m,d),m表示的是最大长度,d表示的显示的小数位数。

虽然两个类型的值有相似也有不相似,但定义的是float、插入的值只要不出错肯定是float类型,10表示该值一共显示10位整数,其中3位位于小数点后面。

扩展资料:

浮点包可以将二进制浮点数存储为非标准化数,而不使用刚刚介绍的存储方法。“非标准化数”是带有保留指数值的非零浮点数,其中尾数的最高有效位为 0。

通过使用非标准化格式,浮点数的范围可以扩展,但会失去精度。您无法控制浮点数以标准化形式还是非标准化形式表示;浮点包决定了表示形式。浮点包从不使用非标准化形式,除非指数变为小于可以标准化形式表示的最小值。

参考资料来源:百度百科-FLOAT

198901245631
推荐于2017-10-12 · TA获得超过3.5万个赞
知道大有可为答主
回答量:9037
采纳率:92%
帮助的人:1710万
展开全部
float类型可以存浮点数(即小数类型),但是float有个缺点的,当不指定小数位数的时候,那么它就会出现小数位数与想要的不一致,导致“报错”(此错误可能是位数不对,也可能是数值不对)。
备注:所以在创建浮点类型的时候必须指定小数位数,float(m,d),m表示的是最大长度,d表示的显示的小数位数,所以在初始化的过程中指点一下即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-11-22
展开全部
这个应该跟你表结构字段类型float(m,d),d:小数点后面的数字个数有关系吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-11-22
展开全部
http://blog.csdn.net/hugeheadhuge/article/details/6440526
讲的挺详细的,你看看。还有其他的浮点类型。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
6rl
2013-11-22 · TA获得超过704个赞
知道小有建树答主
回答量:580
采纳率:66%
帮助的人:371万
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式