如何向 MySQL 添加布尔字段?

mysqlmysqli database

您可以使用 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;

让我们检查内部转换为 tinyint(1) 的 bool 的表示形式。现在检查表 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)

使用插入命令在表中添加 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)

相关文章