首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mysql int(11)数字超出范围

Mysql int(11)数字超出范围
EN

Stack Overflow用户
提问于 2011-08-03 12:25:18
回答 3查看 62.5K关注 0票数 33

当我尝试插入一个像622108120237这样的数字时,我有一个列被设置为int(20),它显示它超出了范围。为什么?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-08-03 12:28:17

带有MySQL的int,存储在4个字节中,因此只能包含介于-21474836482147483647之间的值。

6221081202372147483647更强大;因此它不适合int --看起来您将不得不使用bigint.

请参阅部分

关于这个的MySQL手册。

票数 52
EN

Stack Overflow用户

发布于 2011-08-03 12:28:40

See the MySQL Numeric Type Documentation。这些事情都有很好的记录。

带符号的INT的范围是-2147483648,2147483647。

注意,在INT(x)的情况下,x是“显示宽度”,与范围或空间要求无关:

MySQL支持一个扩展,用于在类型的base关键字后面的圆括号中选择性地指定整数数据类型的显示宽度。例如,INT(4)指定一个显示宽度为四位数的INT ...显示宽度不限制或扩展可以存储在列中的值的范围。

祝你编码愉快。

票数 42
EN

Stack Overflow用户

发布于 2011-08-03 12:29:43

在超过限制的两种情况下,可存储在有符号整数中的最大值为2147483647,无符号整型为4294967295

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6921613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档