INT(1)在MySQL中代表什么?

chi*_*ito 15 mysql

INT(1) - 我知道,1并不代表1位数,它只代表客户端输出显示格式.

但这意味着什么呢?

我已声明YEARint(1),我仍然看到所有4个字节.请告诉我INT(1)意味着什么?

SELECT * FROM TEST_USERDB;
Run Code Online (Sandbox Code Playgroud)
+----+--------+------+
| ID | NAME   | YEAR |
+----+--------+------+
|  1 | abcccc | 2012 |
|  2 | stack  |   99 |
+----+--------+------+
Run Code Online (Sandbox Code Playgroud)

Lio*_*ion 23

一个unsigned int有最大值4294967295不管其 INT(1)int(10)与将使用4个字节的数据.

那么,括号中的数字是什么意思?它几乎归结为显示,它被称为显示宽度.显示宽度是1到255之间的数字.如果希望"显示"所有整数值,可以设置显示宽度.如果在行上启用了zerofill,则该字段的默认值为0 int(1)0000000000for int(10).

阅读更多

  • 当然,如果使用带有*整数类型*的`UNSIGNED`和`ZEROFILL`,它只会被使用.我可以找到它[这里](http://everythingmysql.ning.com/profiles/blogs/data-type-confusion-what-is-an). (2认同)