在MySQL中,如果我们创建一个字段数据类型为INT且未指定任何长度/值,那么它将自动变为int(11),并且如果我们设置属性 UNSIGNED UNSIGNED ZEROFILL ,则它变成int(10)
这个 length(1)去哪了?

最佳答案

int值可以是-2147483648,这是11位数字,因此默认的显示大小是11

unsigned int不允许负数,因此默认情况下只需要显示大小10

如以下文档所示,存储SIGNED INT和UNSIGNED INT所需的位数是相同的,可存储数字的范围只是移位:



http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html

关于mysql - MySQL数据类型INT(11)而未签名INT(10)吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5256560/

10-10 16:26
查看更多