对于该问题,通过几个问题来解决自己的疑问:
1. tinyint类型的含义,实际作用解释
tinyint(M)指的是占据1字节的整型变量类型,每个类型的值所代表的含义,如下图所示:
2. tinyint(M) 中M岁代表的含义
错误的理解:
- tinyint(M) 这里的M代表的并不是存储在数据库中的具体的长度,会有人误以为int(3)只能存储3个长度的数字,int(11)就会存储11个长度的数字,这是错误的。
正确的解释:
- tinyint(M)只有该字段指定zerofill属性时有用,zerofill的含义是自动填充0,如tinyint(4),如果实际值是2,如果列指定了zerofill,查询结果就是0002,左边用0来填充。
- 当tinyint(M)未指定zerofill,那么括号里的数就无意义