Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

BOOLEAN หรือ TINYINT เพื่อเก็บค่าใน MySQL?


MySQL BOOLEAN และ BOOL เทียบเท่ากับ TINYINT(1) เมื่อใดก็ตามที่คุณสร้างคอลัมน์โดยใช้ชนิดข้อมูล BOOLEAN และ BOOL MySQL จะแปลง BOOLEAN และ BOOL เป็น TINYINT(1) โดยปริยาย บูลีนและบูลเทียบเท่ากับ TINYINT(1) เนื่องจากเป็นคำพ้องความหมาย

สร้างตารางโดยใช้ชนิดข้อมูลบูลีน แบบสอบถามเพื่อสร้างตาราง

mysql> สร้างตาราง BooleanDemo -> ( -> IsOn BOOLEAN -> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.58 วินาที)

ตรวจสอบโครงสร้างภายในของตารางด้านบน แบบสอบถามมีดังนี้ −

mysql> แสดงการสร้างตาราง BooleanDemo;

ผลลัพธ์

<ก่อนหน้า>+-------------+-------------------------------- -------------------------------------------------- ------------------------------------+| ตาราง | สร้างตาราง |+-------------+-------------------------------- -------------------------------------------------- ------------------------------------+| BooleanDemo | สร้างตาราง `booleandemo` ( `IsOn` tinyint (1) ค่าเริ่มต้น NULL) ENGINE=InnoDB ค่าเริ่มต้น CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci |+-------------+-------- -------------------------------------------------- -------------------------------------------------- ----------------------+1 แถวในชุด (0.01 วินาที)

ดูเอาต์พุตตัวอย่างด้านบน BOOLEAN จะถูกแปลงเป็น Tinyint (1) เช่นเดียวกับประเภทข้อมูล BOOL เช่นกัน แบบสอบถามเพื่อสร้างตารางมีดังนี้ −

mysql> สร้างตาราง BOOLDemo -> ( -> validUser BOOL -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.61 วินาที)

ตอนนี้ตรวจสอบโครงสร้างภายในของตาราง แบบสอบถามมีดังนี้ −

mysql> แสดงการสร้างตาราง BOOLDemo;

ผลลัพธ์

<ก่อนหน้า>+----------+----------------------------------- -------------------------------------------------- --------------------------------------------------------------+| ตาราง | สร้างตาราง |+----------+----------------------------------- -------------------------------------------------- --------------------------------------------------------------+| BOOLDemo | สร้างตาราง `booldemo` (`ผู้ใช้ที่ถูกต้อง` tinyint(1) ค่าเริ่มต้น NULL ) ENGINE=InnoDB ค่าเริ่มต้น CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci |+----------+----------- -------------------------------------------------- -------------------------------------------------- ---------------------+1 แถวในชุด (0.00 วินาที)