Python MySQL Delete From

Kayıtları silmek

Mevcut tablolarından kayıtları silmek için "DELETE FROM" cümlesini kullanabilirsiniz:

Örnek

"Mountain 21" adresindeki tüm kayıtları silmek için:

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, "silinen kayıt(s)")

Örnek Çalıştır

Önemli:Dikkat etin cümlesi mydb.commit()Değişiklik yapılması gerekmektedir, aksi takdirde tablo herhangi bir değişiklik görmeyecektir。

Dikkat etin DELETE gramerindeki WHERE cümlesi: WHERE cümlesi hangi kayıtların silineceğini belirtir. WHERE cümlesi atıldığında tüm kayıtlar silinecektir!

SQL girişini önlemek

delete cümlesinde herhangi bir sorgu değeri kaçışlamak da iyi bir alışkanlıktır.

Bu, SQL girişi, bu genellikle ağ korsanları tarafından kullanılan yaygın bir siber saldırı tekniktir, veritabanınızı bozabilir veya kötüye kullanabilir, önlemek için gereklidir.

mysql.connector modülü yer tutucuları kullanır %s delete cümlesindeki değerleri kaçışlamak için:

Örnek

Yer tutucuları kullanarak: %s Değerleri kaçışlamak için yöntemler:

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, "silinen kayıt(s)")

Örnek Çalıştır