mysql字段类型整形

阅读: 评论:0

mysql字段类型整形

mysql字段类型整形

11.2.1 Integer Types (Exact Value) - INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT

首先,我们应该清楚的了解:字节(byte)的概念,1个字节等于8个位(bit),一个bit存储0或者1

所以从上面的图其实可以清楚的知道:

1)tinyint:存储所占一个字节,一个字节等于8bit,根据1bit可以存储0到1两种可能性,因此tinyint类型可以存储2的8次方,也就是256种可能性,从0开始计数,无符号也就是可以 存储0~255,如果是有符号,那就是-128~127。

2)smallint:存储所占两个字节,同上也就是可以存储2的16次方,也就是可以存储65536种可能性,无符号从0开始则是可以存储0~65535,有符号则是-32768~32767。

3)mediumint:存储所占三个字节,也就是2的24次方,可以存储16777216种可能性,无符号可以存储0~16777215,有符号可以存储-8388608~8388607。

4)int:存储所占四个字节,也就是2的32次方,可以存储4294967296种可能性,无符号可以存储0~4294967295,有符号则是-2147483648~2147483647。

5)bigint:存储所占8个字节,也就是2的64次方,可以存储2的64次种可能性,无符号可以存储0~((2³²×²)-1),有符号则是-(2³²×²)/2 ~ (2³²×²)/2-1。

【note】

1、我们经常会看到的表的定义:int(11)、int(2)是什么意思呢?

实际上括号里的数字表示的是最大显示宽度,这个数字和存储大小及其类型没有任何关系,也就是说int(11)和int(3)都是存储四个字节,并不会因为括号里的数字改变,这个数字仅仅是显示最大宽度。

显示的最大宽度,其实就是一个数以多少位来显示,不足的位数在其最前面补0;如:int(3)存储3表示为003;int(5)存储23表示为00023.

2、注意:mysql手册上明确写了:当 mysql 为某些复杂的联结(join)生成临时表时,你可能会遇到问题,因为在这种情况下,mysql 信任地认为所有的值均适合原始的列宽度!

本文发布于:2024-01-28 02:32:02,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/17063803264144.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:字段   类型   mysql
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23