How do I fix the 'Out of range value adjusted for column' error?

这一生的挚爱 提交于 2019-11-27 07:36:16

问题


I went into phpMyAdmin and changed the value for an integer(15)field to a 10-digit number, so everything should work fine. I entered the value '4085628851' and I am receiving the following error:

Warning: #1264 Out of range value adjusted for column 'phone' at row 1

It then changes the value to '2147483647'.

After some googling, I found this article that explains how to fix the problem. http://webomania.wordpress.com/2006/10/01/out-of-range-value-adjusted-for-column-error/, but I don't know how to login to the Mysql shell.

How do I login to the Mysql shell? How do I fix this error?


回答1:


The value you were trying to set is too large for a signed INT field. The display width (15) does not affect the range of values that can be stored, only how the value is displayed.

Ref: MySQL Docs on numerics

On phone numbers - see Is it better to store telephone numbers in some canonical format or "as entered"?




回答2:


I just changed the field type to BIGINT, and that fixed the problem. I guess i cant enter a value above 2147483647 for an INT, so I assume everyone who uses a field to enter a 10-digit phone number uses a BIGINT?




回答3:


Best option for storing an integer of value bigger than 2147483647 would be to make the field type as BIGINT.

If it is for storing phone number, then way better is to store the value as a text field.




回答4:


you can try not giving the value that starts with'0'. If you want to begin the values with zero, then use varchar datatype



来源:https://stackoverflow.com/questions/1786509/how-do-i-fix-the-out-of-range-value-adjusted-for-column-error

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!