MySQL中你肯定不知道的int隐情

  MySQL中定义id字段为int类型,但是你知道它内部是什么玩意吗?
  

  1.如果定义int类型,但是不声明长度,系统默认为11个长度(这个大家都知道);
  

  2.如果指定长度小于11,实际上系统还是默认为11,比如你指定int(1),但是你输入123,存入的还是123,并不会是1或者其它;
  

  3.如果指定长度为11或者大于11,但是存入的长度正好是指定的长度,那么存入的内容就不对了,因为前面第一位表示符号+或者-,后面才表示数字。如:int(11),如果存入12345678901正好11位,那么存到库里的会变成2147483647(并不是我们想要存储的);同样,也可以存入-2这样的数据。

原文地址:https://www.cnblogs.com/thinksasa/p/3227256.html