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

บูลีนและ Tinyint (1) ใน MySQL แตกต่างกันอย่างไร


ความแตกต่างพื้นฐานระหว่าง Boolean และ Tinyint (1) อยู่ในแบบแผนการตั้งชื่อเท่านั้น ถ้าเราบอกว่าเราต้องการค่าจริงหรือเท็จ บูลีนก็จะเข้ามาในหัวเรา แทนที่จะเป็น Tinyint(1)

ชนิดข้อมูลเหล่านี้เป็นคำพ้องความหมาย ขึ้นอยู่กับเราว่าเราต้องการใช้ข้อมูลประเภทใด - ค่าสามารถเป็น 1 และ 0 หรือจริงหรือเท็จ

ต่อไปนี้เป็นตัวอย่าง

การสร้างตารางด้วยชนิดข้อมูลบูลีน

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

กำลังแทรกระเบียนลงในตาราง

mysql> แทรกลงในค่า BooleanDemo (จริง) แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.12 วินาที)

เพื่อแสดงบันทึกทั้งหมด

mysql> เลือก *จาก BooleanDemo;

ต่อไปนี้เป็นผลลัพธ์ที่แสดง Boolean TRUE

<ก่อนหน้า>+-------+| แสง |+-------+| 1 |+-------+1 แถวในชุด (0.00 วินาที)

การสร้างตารางด้วยชนิดข้อมูล Tinyint(1)

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

กำลังแทรกระเบียนลงในตาราง

mysql> แทรกลงในค่า tinyint1Demo(1); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.12 วินาที)

เพื่อแสดงรายการทั้งหมด

mysql> เลือก *จาก tinyint1Demo;

นี่คือผลลัพธ์

<ก่อนหน้า>+-------+| แสง |+-------+| 1 |+-------+1 แถวในชุด (0.00 วินาที)

หมายเหตุ − ความแตกต่างพื้นฐานเพียงอย่างเดียวคือในความหมาย หากเรากำลังพูดถึงจริงหรือเท็จ เป็นที่ชัดเจนว่าประเภทข้อมูลควรเป็นบูลีน แต่ถ้าเรากำลังพูดถึง 0 หรือ 1 ประเภทข้อมูลควรเป็น tinyint(1)