如何向 MySQL 中添加一个 Boolean 字段?


你可以使用 tinyint(1) 或 bool 或 boolean。所有这些都是同义词。如果你使用 bool 或 boolean 数据类型,那么它在内部将转换为 tinyint(1)。

在 PHP 中,值 0 表示 false,1 表示 true。除了 0 以外的其他任何数字也都是 true。

让我们检查一下使用表格的 bool 或 boolean 的内部表示。以下是创建表格的查询。

mysql> create table AddBoolDemo
-> (
-> isToggle bool
-> );
Query OK, 0 rows affected (1.24 sec)

要检查表格的 DDL,以下为查询。

SHOW CREATE TABLE yourTableName;

让我们检查一下 bool 的表示,它在内部转换为 tinyint(1)。现在检查 AddBoolDemo 表格。

mysql> show create table AddBoolDemo\G

以下为输出。

*************************** 1. row ***************************
Table: AddBoolDemo
Create Table: CREATE TABLE `addbooldemo` (
`isToggle` tinyint(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
1 row in set (0.00 sec)

使用 insert 命令向表格中添加 true 或 false 或 1 或 0 文字。

mysql> insert into AddBoolDemo values(true);
Query OK, 1 row affected (0.19 sec)

mysql> insert into AddBoolDemo values(false);
Query OK, 1 row affected (0.19 sec)

mysql> insert into AddBoolDemo values(1);
Query OK, 1 row affected (0.10 sec)

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

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

mysql> select *from AddBoolDemo;

以下为输出。

+----------+
| isToggle |
+----------+
| 1        |
| 0        |
| 1        |
| 0        |
+----------+
4 rows in set (0.00 sec)

更新日期: 30-7 月-2019

2K+ 浏览量

开启您的 职业 生涯

通过获得认证完成课程

开始
广告