ข้อมูลในตารางอาจล้าสมัยและเราอาจจำเป็นต้องเปลี่ยนแปลงข้อมูลหลังจากผ่านไประยะหนึ่ง สมมติว่า เรามีตารางของนักเรียน และนักเรียนคนหนึ่งได้เปลี่ยนที่อยู่ของพวกเขา เราจำเป็นต้องเปลี่ยนที่อยู่ของนักเรียนในฐานข้อมูลเพื่อหลีกเลี่ยงปัญหาใด ๆ ในอนาคตอันเนื่องมาจากข้อมูลที่ไม่ถูกต้อง
คำสั่ง "UPDATE" ใน MySQL ใช้เพื่ออัปเดตค่าบางอย่างในตาราง ส่วนคำสั่ง SET ใช้เพื่อตั้งค่าใหม่ในคอลัมน์ ส่วนคำสั่ง WHERE ใช้เพื่อระบุว่าเราจำเป็นต้องอัปเดตข้อมูลหรือค่าที่ใดในตาราง
ไวยากรณ์
UPDATE table_name SET column=new_value WHERE column=old_value
ขั้นตอนที่เกี่ยวข้องกับการอัปเดตข้อมูลในตารางโดยใช้ MySQL ใน python
-
นำเข้าตัวเชื่อมต่อ MySQL
-
สร้างการเชื่อมต่อกับตัวเชื่อมต่อโดยใช้ connect()
-
สร้างวัตถุเคอร์เซอร์โดยใช้เมธอด cursor()
-
สร้างแบบสอบถามโดยใช้คำสั่ง mysql ที่เหมาะสม
-
เรียกใช้คำสั่ง SQL โดยใช้เมธอด execute()
-
คอมมิตการเปลี่ยนแปลงที่ทำโดยใช้วิธี commit()
-
ปิดการเชื่อมต่อ
สมมติว่าเรามีตารางชื่อ “นักเรียน” ดังนี้ −
<ก่อนหน้า>+----------+---------+-----------+-----------+ | ชื่อ | คลาส | เมือง | เครื่องหมาย |+----------+---------+-----------+-----------+| การัน | 4 | อมฤตสาร์ | 95 || ซาฮิล | 6 | อมฤตสาร์ | 93 || กฤติ | 3 | Batala | 88 || คูชิ | 9 | เดลี | 90 || กีรติ | 5 | เดลี | 85 |+----------+---------+-----------+-----------+ตัวอย่าง
สมมติว่าเรามีตารางนักเรียนด้านบนและต้องการอัปเดตเมือง Kriti จาก Batala เป็น Kolkata
นำเข้า mysql.connectordb=mysql.connector.connect(host="your host", user="your username", password="yourpassword",database="database_name")cursor=db.cursor()query=" อัปเดตนักเรียน SET City='Kolkata' WHERE Name='Kriti'"cursor.execute(query)db.commit()query="SELECT * FROM Students"cursor.execute(query)สำหรับแถวในเคอร์เซอร์:print(row)db .close()
โค้ดด้านบนนี้อัพเดทชื่อเมือง Kriti
ผลลัพธ์
('Karan', 4 ,'Amritsar' , 95)('Sahil' , 6 , 'Amritsar' ,93)('Kriti' , 3 , 'Kolkata' ,88)('Amit' , 9 , ' เดลี' , 90)('ปรียา' , 5 , 'เดลี' ,85)
หมายเหตุ
db.commit() ในรหัสข้างต้นมีความสำคัญ มันถูกใช้เพื่อคอมมิตการเปลี่ยนแปลงที่ทำกับตาราง โดยไม่ต้องใช้คอมมิต () จะไม่มีการเปลี่ยนแปลงในตาราง