搜尋

首頁  >  問答  >  主體

MySQL int 类型不是最多只能到 4,294,967,295 么,怎么会有 int(11)?

MySQL int 类型不是最多只能到 4,294,967,295 么,怎么新建表的时候,默认不写 int 后面的数字(即不这样写int(5)),建好表之后会是 int(11)

伊谢尔伦伊谢尔伦2847 天前809

全部回覆(6)我來回復

  • PHPz

    PHPz2017-04-17 11:19:05

    後面的數字只會影響預設顯示的位數

    http://www.ccvita.com/175.html

    回覆
    0
  • 怪我咯

    怪我咯2017-04-17 11:19:05

    舉了個最明白的例子,化妝美容0補全。
    例如

    mysql>建立表格笑話 (a int(11));
    查詢正常,0 行受影響(0.01 秒)

    mysql>插入笑話值(100);
    查詢正常,1 行受影響(0.00 秒)

    mysql>從笑話中選擇*;
    +------+
    |一個|
    +------+
    | 100 |
    +------+
    一組 1 行(0.00 秒)

    mysql>更改表笑話更改 a int(11) Zerofill;
    查詢正常,1 行受影響(0.00 秒)
    記錄:1 重複:0 警告:0

    mysql>從笑話中選擇*;
    +-------------+
    |一個|
    +-------------+
    | 00000000100 |
    +-------------+
    一組 1 行(0.00 秒)

    回覆
    0
  • 阿神

    阿神2017-04-17 11:19:05

    int(11)這裡不是代表的數字最大上限位數的意思,而是數字顯示位數,例如 123,在int(11)中會顯示成 00000000123

    回覆
    0
  • 大家讲道理

    大家讲道理2017-04-17 11:19:05

    建表的時候可以不指定int的長度,這個()裡面顯示的是對外顯示的寬度,Int 是定長資料型別。所以儲存的大小是確定的。不會因為()而改變。

    回覆
    0
  • 黄舟

    黄舟2017-04-17 11:19:05

    如果是有符號整數就會多出負號佔一位

    回覆
    0
  • 天蓬老师

    天蓬老师2017-04-17 11:19:05

    好不好了

    回覆
    0
  • 取消回覆