mysql字段值不能修改_mysql修改字段属性不起作用

之前遇到一个bug,后来发现了原因,现在来纪录下吧,省的以后忘了。

bug:在数据库中定义了一个字段,类型为decimal(8,2)

(PS:decimal(M,D)M数值的总位数。 通俗点讲,就是看有多少个数字,比如,5.6789,M就是5, D:小数点后面能保留几位。 比如上面的5.6789 ,D就是4。 这只是举一个例子,来说明M,D是什么,实际是先有M,D的,然后在来控制数值,而不是更具数值来确定M,D。)

我在bean中的映射类型设置成了double,感觉差不多嘛,结果运行的时候跟我的数据完全不一样了。

表中decimal字段数据:

fdf46889df16

image.png

实际查询出来的数据:

fruits [f_id=a1, s_id=101, f_name=apple, f_price=5.19999999999999997]

那好吧,我去数据库改下字段属性为double,结果居然还是一样!WTF,double和double还不匹配吗?

后来经过查资料发现,字段属性的更改只对更改后新插入的元组起效果,之前的元组还是decimal类型的。

好吧,看来字段属性不能乱换,老老实实的查下decimal对应的是什么,bean中的double换成BigDecimal成功

查询结果如下:

fruits [f_id=a1, s_id=101, f_name=apple, f_price=5.20]

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值