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

วิธีการย้อนกลับ () ใน Python MySQL คืออะไร?


วิธีการ rollback() เป็นหนึ่งในวิธีการต่างๆ ใน ​​Python ที่ใช้ในการทำธุรกรรมฐานข้อมูล

ในที่นี้ เราจะพูดถึงเมธอด rollback()

วิธีการย้อนกลับ () ใช้เพื่อย้อนกลับการเปลี่ยนแปลงล่าสุดหรือกระทำกับฐานข้อมูล หากเงื่อนไขเกิดขึ้นโดยที่ผู้ใช้ไม่พอใจกับการเปลี่ยนแปลงที่ทำกับฐานข้อมูล หรือหากธุรกรรมล้มเหลว จะใช้เมธอด rollback() เพื่อนำฐานข้อมูลกลับสู่สถานะเดิมซึ่งเคยเป็นก่อนทำการเปลี่ยนแปลง นี่เป็นวิธีการที่สำคัญมากเพราะช่วยรักษาความสมบูรณ์ของฐานข้อมูลในกรณีที่ธุรกรรมล้มเหลว

ไวยากรณ์

db.rollback()

db หมายถึงอ็อบเจ็กต์การเชื่อมต่อฐานข้อมูล

ด้านล่างนี้เป็นตัวอย่างเพื่อแสดงการใช้การย้อนกลับ () เพื่อย้อนกลับการเปลี่ยนแปลงในกรณีที่ธุรกรรมล้มเหลว

ขั้นตอนในการย้อนกลับ () ธุรกรรมที่ล้มเหลวในตารางโดยใช้ MySQL ใน python

  • นำเข้าตัวเชื่อมต่อ MySQL

  • สร้างการเชื่อมต่อกับตัวเชื่อมต่อโดยใช้ connect()

  • สร้างวัตถุเคอร์เซอร์โดยใช้เมธอด cursor()

  • พยายามรันการสืบค้นข้อมูลอัพเดตและคอมมิตการเปลี่ยนแปลง

  • หากธุรกรรมล้มเหลว ให้ย้อนกลับธุรกรรม

  • ปิดการเชื่อมต่อ

ตัวอย่าง

รหัสด้านล่างพยายามอัปเดต AGE ของนักเรียนชื่อ Inder ในตารางนักเรียน หากธุรกรรมสำเร็จ จะมีการอัพเดตมิฉะนั้นธุรกรรมจะถูกย้อนกลับและฐานข้อมูลจะกลับสู่สถานะก่อนหน้า

import mysql.connector
from mysql.connector import Error
from mysql.connector import errorcode

try:
   db = mysql.connector.connect(
      host ='localhost',
      database ='database_name',
      user ='user_name'
      password='your_password',
   )

   cs = db.cursor()
   query ="UPDATE STUDENT SET AGE = 23 WHERE Name ='Inder'"
   cs.execute(query)

   # commit changes to the database
   db.commit()

   # update successful message
   print("Database Updated !")

except mysql.connector.Error as error :
   # update failed message as an error
   print("Database Update Failed !: {}".format(error))

   # reverting changes because of exception
   db.rollback()

# Disconnecting from the database
db.close()

ผลลัพธ์

หากทำรายการสำเร็จ

Database Updated!

หากการทำธุรกรรมล้มเหลว

Database Update Failed!