BOOL vs BOOLEAN ใน MySQL - ต่างกันอย่างไร?
คำตอบ: ไม่มีความแตกต่างใดๆ ทั้งสิ้น ทั้งคู่เป็น Synonyms ของ TINYINT(1)
ตัวอย่าง BOOLEAN
CREATE TABLE Demo (isValidUser BOOLEAN);
INSERT INTO Demo VALUES (TRUE), (0);
SELECT * FROM Demo;
ผลลัพธ์:
| isValidUser |
|---|
| 1 |
| 0 |
ตัวอย่าง BOOL
CREATE TABLE Demo1 (isValidUser BOOL);
INSERT INTO Demo1 VALUES (1), (FALSE);
SELECT * FROM Demo1;
ผลลัพธ์:
| isValidUser |
|---|
| 1 |
| 0 |
สรุป
BOOLEAN=BOOL=TINYINT(1)- ค่าจริง (TRUE/true/1) จะเก็บเป็น 1
- ค่าเท็จ (FALSE/false/0) จะเก็บเป็น 0
- MySQL แปลงทั้งคู่เป็น TINYINT(1) ภายในระบบโดยอัตโนมัติ
- ใช้ตัวไหนก็ได้ตามความชอบ BOOLEAN อ่านง่ายกว่า BOOL เล็กน้อย