为什么int类型字段在mysql中默认int(11) 无符号默认int(10)?

int类型在数据库中占4个字节(byte),即32位

int有符号类型 取值在 - 2147483648 ~ 2147483647之间

int无符号类型 取值在 0 ~ 4294967295之间

有符号数最小值:
 - 2 1 4 7 4 8 3 6 4  8
 1 2 3 4 5 6 7 8 9 10 11    --共11位

 无符号数最大值:
 4 2 9 4 9 6 7 2 9 5
 1 2 3 4 5 6 7 8 9 10        --共10位

所以mysql默认显示的int(11)和 unsign int(10),只是表示存储数值显示后的位数,并不是实际存储的位数。


版权声明:本文为zhuocr原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。