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

วิธีอัปเดตค่า Boolean ใน MySQL

MySQL แปลง BOOLEAN เป็น TINYINT(1) ภายใน: true = 1, false = 0 ใช้ UPDATE ธรรมดาได้เลย

ไวยากรณ์

UPDATE yourTable SET yourBooleanColumn = yourValue WHERE condition;

ตัวอย่างการใช้งาน

สร้างตาราง UpdateBooleans:

mysql> CREATE TABLE UpdateBooleans (
    -> Id INT NOT NULL AUTO_INCREMENT,
    -> isSuccessful BOOLEAN,
    -> PRIMARY KEY(Id)
    -> );

เพิ่มข้อมูล true/false:

mysql> INSERT INTO UpdateBooleans(isSuccessful) VALUES(true),(false),(true),(false),(false),(false),(true);

ข้อมูลก่อนอัปเดต (แสดงเป็น 1/0)

+----+--------------+
| Id | isSuccessful |
+----+--------------+
| 1  | 1            |
| 2  | 0            |
| 3  | 1            |
| 4  | 0            |
| 5  | 0            |
| 6  | 0            |
| 7  | 1            |
+----+--------------+

คำสั่งอัปเดต: เปลี่ยน false (0) ทั้งหมดเป็น true (1)

mysql> UPDATE UpdateBooleans SET isSuccessful = TRUE WHERE isSuccessful = FALSE;

ผลลัพธ์หลังอัปเดต (ทั้งหมดกลายเป็น 1)

+----+--------------+
| Id | isSuccessful |
+----+--------------+
| 1  | 1            |
| 2  | 1            |
| 3  | 1            |
| 4  | 1            |
| 5  | 1            |
| 6  | 1            |
| 7  | 1            |
+----+--------------+

คำอธิบาย: ใช้ TRUE/FALSE หรือ 1/0 แทนกันได้ใน WHERE และ SET เพราะ MySQL แปลงอัตโนมัติ