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)