php里tinyint(1)为什么还能插入99这个值?

发布于 2018-08-01  2.59k 次阅读


mysql数据库中以 :
数据类型(m)  来约束数据,
其中数字m在不同的数据类型中表示含义是不同的。
整型数系统已经限制了取值范围,
tinyint占一个字节、int占4个字节。
所以整型数后面的m不是表示的数据长度,
而是表示数据在显示时显示的最小长度(长度为字符数)。
tinyint(1) 这里的1表示的是 最短显示一个字符。
tinyint(2) 这里的2表示的是 最短显示两个字符,
但这里光设置m是没有意义的,
你还需要指定当数据少于长度m时用什么来填充,
比如zerofill(表示有0填充)。
设置tinyint(2) zerofill 你插入1时他会显示01。
设置tinyint(4) zerofill 你插入1时他会显示0001。

公交车司机终于在众人的指责中将座位让给了老太太