数据库
首页 > 数据库> > MySQL 中 bigint、int、mediumint、smallint、tinyint 有符号和无符号的取值范围

MySQL 中 bigint、int、mediumint、smallint、tinyint 有符号和无符号的取值范围

作者:互联网

 

想要了解取值范围首先需要知道的是 bitByte 的概念

bit :位

二进制数系统中,位通常简写为 "b",也称为比特,每个二进制数字 0 或 1 就是一个位(bit)。位是表示信息的最小单位,其中 8 bit 就称为一个字节(Byte)。

 

Byte :字节

字节(Byte)是用于计量存储容量的一种计量单位,是计算机中表示存储空间最基本的容量单位,字节通常简写为 "B"。

 

bit 与 Byte

数据存储是以“字节”(Byte)为单位,数据传输大多是以“位”(bit,又名“比特”)为单位,一个位就代表一个 0 或 1(即二进制),每8个位(bit,简写为b)组成一个字节(Byte,简写为B),是最小一级的信息单位。

 

取值范围

tinyint、smallint、mediumint、int、bigint 分别占用 1、2、3、4、8字节,使用 8、16、24、32、64 位存储空间。它们的有符号可以存储的值的范围从 -2N-1 到 2N-1-1,其中 N 是存储空间的位数。

无符号是设置了 unsigned 属性,表示不允许负值,这大致可以使正数的上限提高一倍。

类型 字节 有符号范围 无符号范围
tinyint 1 8 -128 ~ 127 0 ~ 255
smallint 2 16 -215 ~ 215-1 0 ~ 2*215-1
mediumint 3 24 -223 ~ 223-1 0 ~ 2*223-1
int 4 32 -231 ~ 231-1 0 ~ 2*231-1
bigint 8 64 -263 ~ 263-1 0 ~ 2*263-1

 

标签:smallint,字节,符号,int,bigint,Byte,简写,bit
来源: https://www.cnblogs.com/woods1815/p/15316203.html