今天在做添加数据的时候,发现手机号存储错误,只要位数是11位或者10位数第一位是2的时候,就会出现保存的是2147483647
然后就打印传值和SQL语句,发现传值没问题,SQL语句变了。很不当时。测试几次都是这样,就考虑这个数字是不是有问题,就百度了一下这串数字,发现是32位系统的int的最大值。
当存储的字段大于int类型的最大值时,返回的其实是int类型的最大值。
后将int 改成varchar 有效。
今天在做添加数据的时候,发现手机号存储错误,只要位数是11位或者10位数第一位是2的时候,就会出现保存的是2147483647
然后就打印传值和SQL语句,发现传值没问题,SQL语句变了。很不当时。测试几次都是这样,就考虑这个数字是不是有问题,就百度了一下这串数字,发现是32位系统的int的最大值。
当存储的字段大于int类型的最大值时,返回的其实是int类型的最大值。
后将int 改成varchar 有效。