MySQL 布林型“tinyint(1)”是否能容納高達 127 的值?


讓我們瞭解一下有關 MySQL 中 TINYINT 型別的部分要點 -

  • TINYINT 型別佔 1 位元組,即 8 位。
  • TINYINT(N),其中 N 表示您想要的顯示寬度。

例如,TINYINT(1) 可用於顯示寬度為 1。

讓我們瞭解一下最小值和最大值 -

The maximum value for tinyint is= (2(8-1)-1) = 127
The minimum value for tinyint is = -(2(8-1)) = -128.

該值介於 -128 到 127 之間。這意味著 TINYINT (1) 不會影響 tinyint 的最大值和最小值。

讓我們檢查一下 -

首先,建立一個表,將其列設定為 TINYINT (1) -

mysql> create table Display
   -> (
   -> rangeOfId tinyint(1)
   -> );
Query OK, 0 rows affected (0.67 sec)

讓我們插入一個超出最大和最小範圍的值。這會導致錯誤 -

mysql> insert into Display values(128);
ERROR 1264 (22003): Out of range value for column 'rangeOfId' at row 1

插入記錄的查詢如下。現在,我們將在範圍內插入值 -

mysql> insert into Display values(127);
Query OK, 1 row affected (0.18 sec)

mysql> insert into Display values(-128);
Query OK, 1 row affected (0.20 sec)

使用選擇語句顯示錶中的所有記錄。查詢如下 -

mysql> select *from Display;

輸出

+-----------+
| rangeOfId |
+-----------+
|       127 |
|      -128 |
+-----------+
2 rows in set (0.00 sec)

更新於: 30-Jul-2019

752 次瀏覽

開啟您的 職業生涯

完成該課程,獲得認證

開始
廣告