INT[(M)] [UNSIGNED] [ZEROFILL]
普通大小的整数。带符号的范围是-2147483648到2147483647。无符号的范围是0到4294967295。
INT(1) 和 INT(10)本身没有区别,但是INT[(M)] 加上ZEROFILL值后,会对值有宽度的设置。
在创建表的时候将zerofill加上试一下。
我们看见数据12前面输出多了个0,是因为加了zerofilll后,是用于显示宽度的限制。而多出来的会照常显示出来。只是系统判定12显示宽度不足,会补0来补全显示宽度。
但是要注意插入负数的时候:
没有设置zerofill的时候负数正常显示
咱再来看看设置 zerofill的时候:
我们可以看出,插入的是-1234 而显示确是000。
添加zerofill的时候系统会给自动添加上unsigned(无符号整型)属性,就是非负数。而设置的显示宽度为3位。所以就会输出000,所以,在没有添加zerofill的时候int(1)和int(10)是没有区别的。
MySQL中int(1)和int(10)的区别?
于 2022-04-08 14:20:06 首次发布