[Python]pymysqlで.sqlファイル実行

システム開発

概要

PythonでPyMySQLを使用してSQLファイルを実行する方法です。

手順

pymysqlのインストール

pip install pymysql

Pythonサンプルコード

Python
import pymysql

DB_CONFIG = {
    'host': 'your_host',
    'user': 'your_user',
    'password': 'your_password',
    'database': 'your_database',
}

SQL_FILE = 'your_file.sql'

connection = pymysql.connect(
    **DB_CONFIG
)

try:
    with connection.cursor() as cursor:
        with open(SQL_FILE, 'r', encoding='utf-8') as file:
            sql = file.read()
        for statement in sql.split(';'):
            if statement.strip():
                cursor.execute(statement)
    connection.commit()
    print("SQLファイルを正常に実行しました")
except Exception as e:
    print(f"エラーが発生しました: {e}")
    connection.rollback()
finally:
    connection.close()

.sqlファイル内に複数のSQL文が含まれることを想定し、sql.split(‘;’) で;区切りでSQLを実行します。

タイトルとURLをコピーしました