Python MySQL Delete



章節


刪除記錄

可以使用“DELETE FROM”語句,從現有表中刪除記錄:

示例

刪除地址為“Mountain 21”的記錄:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="你的用戶名",
  passwd="你的密碼",
  database="mydatabase"
)

mycursor = mydb.cursor()

sql = "DELETE FROM customers WHERE address = 'Mountain 21'"

mycursor.execute(sql)

mydb.commit()

print(mycursor.rowcount, " 條記錄刪除")

注意: 數據庫修改后,需要使用mydb.commit()語句提交,不提交,修改不會生效。

注意DELETE語句中的WHERE子句: WHERE子句指定應該刪除哪些記錄。如果省略WHERE子句,將刪除所有記錄!

防止SQL注入

在delete語句中,為了防止SQL注入,通常應該轉義查詢值。

SQL注入是一種常見的web黑客技術,用於破壞或誤用數據庫。

mysql.connector 模塊有方法可以轉義查詢值:

示例

使用占位符%s方法轉義查詢值:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="你的用戶名",
  passwd="你的密碼",
  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, " 條記錄刪除")


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM