Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Khác biệt giữa TINYINT(1) và Boolean trong MySQL

Không có sự khác biệt giữa TINYINT(1) và Boolean. Từ khóa BOOL hoặc BOOLEAN nội bộ được chuyển đổi thành TINYINT(1); chúng là đồng nghĩa.

Tạo bảng với cột Boolean:

mysql> CREATE TABLE DemoTable (
    isMarried BOOLEAN
); Query OK, 0 rows affected (1.77 sec)

Kiểm tra cấu trúc:

mysql> DESC DemoTable;

Kết quả cho thấy kiểu thực tế là tinyint(1):

+-----------+------------+------+-----+---------+-------+
| Field     | Type       | Null | Key | Default | Extra |
+-----------+------------+------+-----+---------+-------+
| isMarried | tinyint(1) | YES  |     | NULL    |       |
+-----------+------------+------+-----+---------+-------+
1 row in set (0.01 sec)

Chèn dữ liệu dùng true/false:

mysql> INSERT INTO DemoTable VALUES(true);  Query OK, 1 row affected (0.30 sec)
mysql> INSERT INTO DemoTable VALUES(false); Query OK, 1 row affected (0.16 sec)

Hiển thị dữ liệu (lưu trữ dưới dạng 1/0):

mysql> SELECT * FROM DemoTable;

Kết quả:

+-----------+
| isMarried |
+-----------+
| 1         |
| 0         |
+-----------+
2 rows in set (0.00 sec)