如何向 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)
广告