python mysqlでupdateを実行してデータを更新する

python mysqlでupdateを実行してデータを更新する

pythonで、mysqlでupdateを実行してデータを更新するサンプルコードを記述してます。pythonのバージョンは3.9.7を使用してます。

環境

  • OS windows 11 Home
  • python 3.9.7

mysql-connector-pythonインストール

ライブラリ「mysql-connector-python」を使用するのでインストールしてない場合は、
「pip」を使ってインストールします。

pip install mysql-connector-python

サンプルコード

localhostにある「mysql」に接続して、以下の構成のテーブル「foo」のデータを更新します。

テーブル「foo」

updateを実行してデータを更新します。

import mysql.connector

# 接続情報を記述
conn = mysql.connector.connect(
    host="localhost", port="3306", user="root", password="password"
)

# 接続状況確認
if conn.is_connected():
    try:
        # 再接続を行うように設定
        conn.ping(reconnect=True)
        
        # autocommit禁止
        conn.autocommit = False

        # カーソル作成
        cr = conn.cursor()

        # DB選択
        cr.execute("use hoge;")

        # クエリを作成
        sql = ("""
            UPDATE  foo
            SET     name = %s
            WHERE   id = %s
        """)

        param = ('rename1', 1)
        
        # updateを実行
        cr.execute(sql, param)
        
        # コミットする
        conn.commit()
        
    except mysql.connector.Error as e:
        # ロールバック
        conn.rollback()
        print(e)
        
    finally:
        # クローズ
        cr.close()
        conn.close()
else:

    exit()

データが更新されていることが確認できます。