mysql中建表时,int(11)与int(10)即int(m) 其中的m指的是显示长度,其中Int占4个字节是不变的,那为什么还要指定m呢 ,有什么意义?

解决方案 »

  1.   

    MySQL还支持选择在该类型关键字后面的括号内指定整数值的显示宽度(例如,INT(4))。该可选显示宽度规定用于显示宽度小于指定的列宽度的值时从左侧填满宽度。显示宽度并不限制可以在列内保存的值的范围,也不限制超过列的指定宽度的值的显示。当结合可选扩展属性ZEROFILL使用时, 默认补充的空格用零代替。例如,对于声明为INT(5) ZEROFILL的列,值4检索为00004。请注意如果在整数列保存超过显示宽度的一个值,当MySQL为复杂联接生成临时表时会遇到问题,因为在这些情况下MySQL相信数据适合原列宽度。
      

  2.   

    其实int(m)中,那个m不是显示长度,是存储数据的最大长度~~~~~