Python MySQL Delete From

Xóa bản ghi

Bạn có thể sử dụng câu lệnh "DELETE FROM" để xóa bản ghi từ bảng đã có:

Mô hình

Xóa bất kỳ bản ghi nào có địa chỉ "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, "record(s) deleted")

Chạy mô hình

Quan trọng:Vui lòng chú ý đến câu lệnh mydb.commit()Cần phải thay đổi, nếu không bảng sẽ không có bất kỳ thay đổi nào.

Vui lòng chú ý đến cấu trúc WHERE trong cú pháp DELETE: WHERE clause xác định các bản ghi nào cần xóa. Nếu bỏ qua WHERE clause, tất cả các bản ghi sẽ bị xóa!

Phòng ngừa SQL注入

Định nghĩa bất kỳ giá trị nào trong câu lệnh delete cũng là một thói quen tốt.

Bước này nhằm防止 SQL注入, một kỹ thuật tấn công mạng phổ biến có thể phá hủy hoặc lạm dụng cơ sở dữ liệu của bạn.

Mô-đun mysql.connector sử dụng占位符 %s Để định nghĩa giá trị trong câu lệnh delete:

Mô hình

Sử dụng占位符 %s Cách để định nghĩa giá trị:

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, "record(s) deleted")

Chạy mô hình