Python MySQL Delete From
- 上一頁 MySQL Order By
- 下一頁 MySQL Drop Table
刪除記錄
您可以使用 "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, "record(s) deleted")
重要:請注意語句 mydb.commit()
。需要進行更改,否則表不會有任何改變。
請注意 DELETE 語法中的 WHERE 子句:WHERE 子句指定應刪除哪些記錄。如果省略 WHERE 子句,則將刪除所有記錄!
防止 SQL 注入
在 delete 語句中,轉義任何查詢的值也是一種好習慣。
此舉是為了防止 SQL 注入,這是一種常見的網絡黑客技術,可以破壞或濫用您的數據庫。
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, "record(s) deleted")
- 上一頁 MySQL Order By
- 下一頁 MySQL Drop Table