بايثونطريقة تعديل البيانات المخزنة في الجدول

المثال التالي يعلمك طريقة تعديل المعلومات المخزنة في جدول.
فعلياً، سنقوم بتغيير إسم الموظف الذي يملك رقم id يساوي 3 في الجدول employee.

لحفظ أي معلومات تم إضافتها، تعديلها أو مسحها من أي جدول في قاعدة البيانات، يجب استدعاء الدالة commit() لحفظ التغيرات.


مثال

Test.py
# mysql.connector هنا قمنا بتضمين كل محتوى الموديول
import mysql.connector

# MySQL حتى ترجع كائن يسمح لنا بالإتصال بقواعد بيانات connect() هنا قمنا باستدعاء الدالة
db = mysql.connector.connect(
  user='root',
  passwd='',
  host='localhost',
  database='company'
)

# يسمح لنا بالتعامل مع قاعدة البيانات cursor لإنشاء كائن cursor() هنا قمنا باستدعاء الدالة
cursor = db.cursor()

# 'employee' وضعنا فيه نص الإستعلام الذي يقضي بتعديل قيمة حقل في الجدول sql المتغير
sql = 'UPDATE employee SET name = %s WHERE ID = %s'

# sql يمثل المعلومات التي سيتم دمجها مع الإستعلام الذي قمنا بتجهيزه في الكائن tuple عبارة عن val الكائن
val = ('Lara', '3')

# sql و تمرير نص الإستعلام المخزن في المتغير execute() هنا قمنا باستدعاء الدالة
# val و من ثم القيم التي سيتم دمجها مع نص الإستعلام و التي قمنا بتخزينها في الكائن
cursor.execute(sql, val)

# لحفظ التغيرات التي تم إجراءها في قاعدة البيانات commit() هنا قمنا باستدعاء الدالة
db.commit()

# هنا قمنا بطباعة عدد الأسطر التي تم تعديل محتواها في الجدول بسبب الإستعلام الذي تم إرساله سابقاً
print(cursor.rowcount, 'record(s) affected')

# هنا قمنا بإغلاق الإتصال مع قاعدة البيانات
cursor.close()
db.close()

النتيجة: إذا لم يظهر لك أي خطأ بعد تنفيذ الكود فهذا يعني أنه تم تعديل إسم الموظف بنجاح في الجدول employee و سيتم طباعة ما يلي.

1 record(s) affected

معلومة تقنية

قبل إرسال الإستعلام إلى قاعدة البيانات، قامت الدالة execute() بدمج نص الإستعلام و القيم التي مررناها لها كالتالي.

UPDATE employee SET name = 'Lara' WHERE ID = 3