IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    mysql中int(1)和int(11)区别

    mckee发表于 2016-07-30 01:20:45
    love 0

    mysql字段定义中INT(x)中的x仅仅指的是显示宽度。该可选显示宽度规定用于显示宽度小于指定的列宽度的值时从左侧填满宽度。显示宽度并不限制可以在列内保存的值的范围,也不限制超过列的指定宽度的值的显示。所以x的定义与存储空间没有任何关系都是4个字节。
    如果给字段添加可选项
    ZEROFILL时,就更明显了。因为它会将默认补充的空格用零代替。

    //INT(4) UNSIGNED ZEROFILL
    0001
    0002 
    ...
    0099
    ...
    0999
    ...
    9999
    ...
    10000
    
    //INT(2) UNSIGNED ZEROFILL
    01
    02 
    ...
    09
    ...
    99
    ...
    100

     如果不带ZEROFILL选项,那么左侧就会以空格填充
    //INT(4)
       1
       2 
    ...
      99
    ...
     999
    ...
    9999
    ...
    10000
    
    //INT(2)
     1
     2 
    ...
     9
    ...
    99
    ...
    100

     



沪ICP备19023445号-2号
友情链接