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)
   -> );

让我们插入一个超出最大和最小范围的值。这将导致错误-

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);

mysql> insert into Display values(-128);

使用select语句显示表中的所有记录。查询如下-

mysql> select *from Display;

输出结果

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