You can use tinyint(1) or bool or boolean. All are synonyms. If the bool or boolean data type is used, it becomes tinyint(1) internally.
In PHP, the value 0 represents false and 1 represents true. Also true for any number other than 0.
Let us check the internal representation of bool or boolean using table. The query to create the table is as follows.
mysql> create table AddBoolDemo -> ( -> isToggle bool -> ); Query OK, 0 rows affected (1.24 sec)
To check the DDL of the table, below is the query.
SHOW CREATE TABLE yourTableName;
Let's check the representation of bool, which is internally converted to tinyint(1). Now check the table AddBoolDemo.
mysql> show create table AddBoolDemo\G
The following is the output.
*************************** 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)
Use the insert command to add true or false or 1 or 0 text to the table.
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)
Use the select statement to display all records in the table. The query is as follows.
mysql> select *from AddBoolDemo;
The following is the output.
+----------+ | isToggle | +----------+ | 1 | | 0 | | 1 | | 0 | +----------+ 4 rows in set (0.00 sec)
The above is the detailed content of How to add boolean field to MySQL?. For more information, please follow other related articles on the PHP Chinese website!