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

เลื่อนค่าของแถวใน MySQL เพื่อเปลี่ยนค่า id ที่มีอยู่สำหรับแถวที่มีอยู่?


เรามาสร้างตารางกันก่อน -

mysql> สร้างตาราง DemoTable -> ( -> StudentId int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, -> StudentName varchar(20) -> ); แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (1.07 วินาที)

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

mysql> แทรกลงในค่า DemoTable(StudentName) ('Chris'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.23 วินาที)mysql> แทรกลงในค่า DemoTable (StudentName) ('Robert'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว ( 0.12 วินาที) mysql> แทรกลงในค่า DemoTable (StudentName) ('David'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.18 วินาที) mysql> แทรกลงในค่า DemoTable (StudentName) ('Mike'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.10 วินาที)

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

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

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

<ก่อนหน้า>+-----------+-------------+| รหัสนักศึกษา | ชื่อนักเรียน |+-----------+-------------+| 1 | คริส || 2 | โรเบิร์ต || 3 | เดวิด || 4 | Mike |+-----------+-------------+4 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อเปลี่ยนค่า id ของแถวที่มีอยู่ใน MySQL -

mysql> อัปเดตชุด DemoTable StudentId=StudentId+1000 ตกลง ตกลง 4 แถวได้รับผลกระทบ (0.18 วินาที) แถวที่ตรงกัน:4 เปลี่ยน:4 คำเตือน:0

ให้เราตรวจสอบบันทึกตารางอีกครั้ง -

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

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

<ก่อนหน้า>+-----------+-------------+| รหัสนักศึกษา | ชื่อนักเรียน |+-----------+-------------+| 1001 | คริส || 1002 | โรเบิร์ต || 1003 | เดวิด || 1004 | Mike |+-----------+-------------+4 แถวในชุด (0.00 วินาที)