【问题标题】:If I leave length/values field of integer type blank in MySQL how much length of data can it store?如果我在 MySQL 中将整数类型的长度/值字段留空,它可以存储多少长度的数据?
【发布时间】:2013-03-03 19:42:37
【问题描述】:

在创建表时,我们通常将 id 字段设为整数类型。但是如果我没有在长度字段中指定任何值,它将存储多少长度数据?

【问题讨论】:

  • MySQL INT meaning的可能重复
  • 长度没有指定它将存储的数据的大小,而是用于显示它的字段的大小。

标签: mysql integer datafield


【解决方案1】:

Juhana 感谢您的链接和回答。我得到了它。长度用于显示将显示多少个字符,而不是可以存储多少数据。因此,如果我说整数类型长度为 3,那么 id 最多会显示 999,但会存储超出此范围的值。我希望我做对了。

【讨论】:

  • 嗯,不完全是。请参阅副本中的引用:“显示宽度不会限制可以存储在列中的值的范围。也不会阻止比列显示宽度更宽的值正确显示。" 如果您在长度为 3 的字段中的值 >999,则这些值会正确显示,但布局可能会中断。它基本上只是为了确保在显示表格数据时列整齐排列。
【解决方案2】:

我找到了一个explanation elsewhere,上面写着您在创建数字列时指定的值/长度,只有在您使用zerofill 查询时才会起作用。 Example here.

如果您存储的值为 5
INT(4) 将显示 0005
INT(11) 将显示 00000000005

有一个note in mysql docs 告诉它太小可能会出现问题,所以我个人在创建新的数字列时将其留空。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-20
    • 2012-10-06
    • 2010-09-14
    • 2011-08-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多