MySQL 中BOOL和BOOLEAN列数据类型之间有什么区别?
BOOL和BOOLEAN都像TINYINT(1)一样。你可以说它们都是TINYINT(1)的同义词。
阅读更多:MySQL 教程
BOOLEAN
下面是BOOLEAN的一个例子。创建一个带有boolean类型的列的表的查询。
mysql> create table Demo
-> (
-> isVaidUser boolean
-> );
查询结果:Query OK, 0 rows affected (1.08 sec)
使用插入命令将记录插入表的查询如下所示 −
mysql> insert into Demo values(true);
查询结果:Query OK, 1 row affected (0.19 sec)
mysql> insert into Demo values(0);
查询结果:Query OK, 1 row affected (0.17 sec)
使用选择命令显示表中的所有值。查询如下所示 −
mysql> select *from Demo;
输出
+------------+
| isVaidUser |
+------------+
| 1 |
| 0 |
+------------+
查询结果:2 rows in set (0.00 sec)
BOOL
下面是BOOL的一个例子。以下是创建表的查询 −
mysql> create table Demo1
-> (
-> isVaidUser bool
-> );
查询结果:Query OK, 0 rows affected (0.54 sec)
使用插入命令将记录插入表。查询如下所示 −
mysql> insert into Demo1 values(1);
查询结果:Query OK, 1 row affected (0.14 sec)
mysql> insert into Demo1 values(false);
查询结果:Query OK, 1 row affected (0.16 sec)
使用选择命令显示表中的所有值。查询如下所示 −
mysql> select *from Demo1;
输出
+------------+
| isVaidUser |
+------------+
| 1 |
| 0 |
+------------+
查询结果:2 rows in set (0.00 sec)
查看样本输出,false被转换为0。这意味着BOOL和BOOLEAN隐式转换为tinyint(1)。
极客教程