之前在使用mysql设置数据类型与宽度时不太理解,特意来学习一下,以int(M)为例:
int(M):M indicates the maximum display width for integer types.
在integer数据类型中,M表示最大显示宽度,最大有效显示宽度是255。显示宽度与存储大小或类型所包含的值的范围无关。例如int(3)、int(4)、int(8)在磁盘上都是占用4 bytes 存储范围都为(-2^31~2^31-1)。
例如存入1234,勾选填充0(Zerofill),在mysql中会显示
int(3) int(4) int(8)
1234 1234 00001234
显示规则为:不足宽度左补0,足宽度(包括>=)照原样输出。注意:他们的存储范围都为(-2^31~2^31-1)。