【问题标题】:What does INT(1) stand for in MySQL?INT(1) 在 MySQL 中代表什么?
【发布时间】:2025-11-21 10:25:03
【问题描述】:

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

但这意味着什么

我已将 YEAR 声明为 int(1),我仍然看到所有 4 个字节。请告诉我INT(1) 是什么意思?

SELECT * FROM TEST_USERDB;
+----+--------+------+
| ID | NAME   | YEAR |
+----+--------+------+
|  1 | abcccc | 2012 |
|  2 | stack  |   99 |
+----+--------+------+

【问题讨论】:

标签: mysql


【解决方案1】:

unsigned int 的最大值为4294967295,无论它是否 INT(1)int(10) 将使用 4 个字节的数据。

那么,括号中的数字是什么意思?它几乎来了 向下显示,称为显示宽度。显示宽度为 数字从 1 到 255。如果你想要所有的,你可以设置显示宽度 你的整数值“出现”。如果在行上启用 zerofill, int(1)0000000000 的默认值为 0 int(10)

Read more

【讨论】:

  • 你的意思是 int(1) 中的 1 只有在我使用自动填充时才有意义??
  • 当然,只有在UNSIGNEDZEROFILL 使用整数类型 时才会用到。我可以找到它提到了here