开发者社区 问答 正文

为什么mysql的int占四个字节?

它表示范围很大,400000多,那这样算的话一个数字就一个字节,为怎么都会说他只占4个字节呢。

展开
收起
蛮大人123 2016-02-06 16:26:23 4596 分享 版权
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    1位只能表示0或1(2进制)8位(byte)=1字节能表示2的4*8次方的数据)= 4294967296,因为要表示正负还有0,所以最终的表示整形范围(10进制)为-2147483648~2147483647,字段的数据类型是固定的。比如你声明int(11),注:这里的11表示的是数字的长度那么无论存储的数字的长度是多少(只要不超过int(11)的表示范围)mysql都会事先预留int(11)这么多的空间用来存储数据。不会根据数据的大小来改变存储大小。

    2019-07-17 18:38:30
    赞同 展开评论