CREATE TABLE `M` (
`id` tinyint(4) NOT NULL AUTO_INCREMENT,
`tiny_1` tinyint(1) NOT NULL,
`tiny_2` tinyint(2) NOT NULL,
`tiny_3` tinyint(3) NOT NULL,
`tiny_4` tinyint(4) NOT NULL,
`tiny_5` tinyint(5) NOT NULL,
`tiny_6` tinyint(6) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=127 DEFAULT CHARSET=utf8;
ZEROFILL属性,补零。这个属性和宽度没有关系,我看有的博客上说,可以不用设置,用数据库默认的长度就行,这种做法可取吗?
https://dev.mysql.com/doc/ref...
对于 tinyint 来说,那个(4),或其他,只是显示宽度,不影响实际存储数值范围,也不影响对超过宽度的数字的正常显示与处理。
如果你自己处理这个数据的话,列宽基本是没有用的。