类型 字节 有符号取值范围 无符号取值范围 默认宽度
TINYINT 1 -128 ~ 127 0 ~ 255 4
SMALLINT 2 -32768 ~ 32767 0 ~ 65535 6
MEDIUMINT 3 -8388608 ~ 8388607 0 ~ 16777215 9
INT 4 -2147483648 ~ 2147483647 0 ~ 4294967295 11
BIGINT 8 -9223372036854775808 ~ 9223372036854775807 0 ~ 18446744073709551615 20

此处默认宽度应该是按 无符号最大值位数 + 1 来计算

而其他 char 和 varchar 是实实在在表示字节大小范围,在UTF-8编码下,char(1)则表示只能存1个字符(汉字),char(5)则表示只能存5个字符(汉字)

  • 私信