mysql中要存储小数用什么类型数据好?

我的一个javaweb用的mysql5.0,其中有一张表是保存数据的,存储的是带小数的数据,精度要求4,5位,我用的是double,结果手动往里面添加数据时不能输入,后面... 我的一个javaweb用的mysql5.0,其中有一张表是保存数据的,存储的是带小数的数据,精度要求4,5位,我用的是double,结果手动往里面添加数据时不能输入,后面去百度了一下,发现有好几种,float,double,decimal,numeric,请问它们有什么区别? 展开
 我来答
MarkGo
推荐于2017-09-02 · 测试API接口使用的啊1
MarkGo
采纳数:257 获赞数:427

向TA提问 私信TA
展开全部
要求精度高就用decimal

审题错了...
简单写下区别:
float:浮点型,含字节数为4,32bit,数值范围为-3.4E38~3.4E38(7个有效位)
double:双精度实型,含字节数为8,64bit数值范围-1.7E308~1.7E308(15个有效位)
decimal:数字型,128bit,不存在精度损失,常用于银行帐目计算。(28个有效位)

numberic === decimal

float f = 345.98756f;//结果显示为345.9876,只显示7个有效位,对最后一位数四舍五入。
double d=345.975423578631442d;//结果显示为345.975423578631,只显示15个有效位,对最后一位四舍五入。
注:float和double的相乘操作,数字溢出不会报错,会有精度的损失。
decimal dd=345.545454879.....//可以支持28位,对最后一位四舍五入。
注:当对decimal类型进行操作时,数值会因溢出而报错。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式