mysql数据表字段设置为decimal时易犯的错误

原创
2020/10/02 22:38
阅读数 1.6K

今天在向上图所示mysql数据表插入数据,当price插入>=1的数值时,老是报错误:( #1264 - Out of range value for column 'price' at row 1 ),意思就是price字段要插入的值超出了数据定义范围,如下图:

刚开始以为mysql可以设定字段值的范围,百度了一下不是,最后再检查price字段定义:decimal(4,4),并且按照下图phpmyadmin给出的注释理解,没什么错误啊,整数部分4位,小数部分四位,按这个理解最大可以为9999.9999,可是为什么大于等于1就报错呢。

最后又百度了下资料,终于弄明白phpmyadmin的注释害人不浅啊,原来正确的意思是: decimal(x,y):x代表数值总长度,y代表小数部分位数的长度;decimal(4,4)意思是一共就长4位,其中小数部分就占了4位,所以在程序里面一旦这个值大于1就会报错,这个字段的值永远只能在 -0.9999 到 0.9999;

 

 

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部