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

UPDATE เขียนทับค่าหรือไม่ถ้ามันเหมือนกันใน MySQL


ไม่ MySQL UPDATE จะไม่เขียนทับค่าหากค่าเท่ากัน ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable( StudentId int, StudentMathMarks int, StudentMySQLMarks int); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.46 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable (1,56,78) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.21 วินาที) mysql> แทรกลงในค่า DemoTable (2,88,99) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที )mysql> แทรกลงในค่า DemoTable (3,34,98); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.13 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

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

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+-----------+-----------+--------------------------- ----+| รหัสนักศึกษา | StudentMathMarks | StudentMySQLMarks |+-----------+-----------------+---------------- ----+| 1 | 56 | 78 || 2 | 88 | 99 || 3 | 34 | 98 |+-----------+-----------------+---------------- ---+3 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อปรับปรุงค่า ค่าที่ตั้งไว้มีอยู่แล้วในคอลัมน์เฉพาะนั้น เช่น รหัสนักเรียน 2 คะแนนคณิตศาสตร์ 88 และ SQL คะแนน 99 สำหรับรหัสนักเรียน 2 -

mysql> อัปเดตชุด DemoTable StudentId=2,StudentMathMarks=88,StudentMySQLMarks=99 โดยที่ StudentId=2;สอบถามตกลง 0 แถวได้รับผลกระทบ (0.00 วินาที) แถวที่ตรงกัน:1 เปลี่ยนแล้ว:0 คำเตือน:0

ดูคำสั่ง UPDATE ด้านบน ผลลัพธ์ ได้รับผลกระทบ 0 แถว หมายความว่า UPDATE จะไม่เขียนทับค่าหากเหมือนกัน