Python MySQL Delete From
- 前のページ MySQL を並べ替え
- 次のページ MySQL テーブルを削除
レコードの削除
「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()
変更が必要でないと、テーブルに何も変更が加わりません。
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, "削除されたレコード数")
- 前のページ MySQL を並べ替え
- 次のページ MySQL テーブルを削除