TECH I.S.

Python MySQL UPDATE TABLE


テーブルの更新

"UPDATE"ステートメントを使用して、テーブル内の既存のレコードを更新できます。

住所列を「Valley 345」から「Canyon 123」に上書きします。

import mysql.connector mydb = mysql.connector.connect(   host="localhost",   user="yourusername",   password="yourpassword",   database="mydatabase" ) mycursor = mydb.cursor() sql = "UPDATE customers SET address = 'Canyon 123' WHERE address = 'Valley 345'" mycursor.execute(sql) mydb.commit() print(mycursor.rowcount, "record(s) affected")
実行例 »

重要!:mydb.commit()というステートメントに注意してください。変更を行う必要があります。変更しない場合、テーブルは変更されません。

UPDATE構文のWHERE句に注意してください。WHERE句は、更新する必要があるレコードを指定します。WHERE句を省略すると、すべてのレコードが更新されます。


SQLインジェクションを防ぐ

updateステートメントでも、クエリの値をエスケープすることをお勧めします。

これは、データベースを破壊または悪用する一般的なWebハッキング手法であるSQLインジェクションを防ぐためです。

mysql.connectorモジュールは、プレースホルダー%sを使用して、削除ステートメント内の値をエスケープします。

プレースホルダー%sメソッドを使用して値をエスケープします。

import mysql.connector mydb = mysql.connector.connect(   host="localhost",   user="yourusername",   password="yourpassword",   database="mydatabase" ) mycursor = mydb.cursor() sql = "UPDATE customers SET address = %s WHERE address = %s" val = ("Valley 345", "Canyon 123") mycursor.execute(sql, val) mydb.commit() print(mycursor.rowcount, "record(s) affected")
実行例 »

プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細