Python MySQL Delete From

حذف ثبت

می‌توانید از جملة "DELETE FROM" برای حذف ثبت‌ها از جدول‌های موجود استفاده کنید:

مثال

هرگونه ثبت با آدرس "Mountain 21" را حذف کنید:

import mysql.connector
mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  passwd="yourpassword",
  database="mydatabase"
)
mycursor = mydb.cursor()
sql = "DELETE FROM customers WHERE address = 'Mountain 21'
mycursor.execute(sql)
mydb.commit()
print(mycursor.rowcount, "سطر(ات) محذوفة")

تشغيل المثال

مهم:لطفاً به جملة توجه کنید mydb.commit()لازم است تغییراتی انجام شود، در غیر این صورت هیچ تغییری در جدول ایجاد نمی‌شود.

لطفاً جملة WHERE در نحوه استفاده از DELETE توجه کنید: جملة WHERE مشخص می‌کند که چه ثبت‌هایی باید حذف شوند. اگر جملة WHERE را حذف کنید، تمامی ثبت‌ها حذف خواهند شد!

منع هجمات SQL Injection

من الجيد أيضًا تشويه أي قيمة استعلام في جملة delete.

هذا لمنع هجمات SQL Injection، وهي تقنية مشهورة يستخدمها المخترقون للتعديل أو التلاعب ببيانات قاعدة البيانات الخاصة بك.

يستخدم ملف mysql.connector حروف الترقيم %s للتشويه القيم في جملة delete:

مثال

استخدام حروف الترقيم %s طريقة لتشويه القيم:

import mysql.connector
mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  passwd="yourpassword",
  database="mydatabase"
)
mycursor = mydb.cursor()
sql = "DELETE FROM customers WHERE address =" %s"
adr = ("Yellow Garden 2", )
mycursor.execute(sql, adr)
mydb.commit()
print(mycursor.rowcount, "سطر(ات) محذوفة")

تشغيل المثال