
こんにちは、Webエンジニアのあきぞらです。
今回は、PythonからMySQLに挿入した日本語データが文字化けしたときの対応方法を紹介したいと思います。
日本語データが文字化けしたときの対応方法
問題があったのは以下のコードでした。
# Python からMySQLに接続する際に接続情報を記述する部分
conn = MySQLdb.connect(
user = MYAPP_USER,
passwd = MYAPP_PASS,
host = MYAPP_HOST,
port = int(MYAPP_PORT),
db = MYAPP_DATABASE,
)
問題は、Charsetを指定していなかったことでした。
以下のようにCharsetの設定を加えると、日本語でデータが挿入されました!
conn = MySQLdb.connect(
user = MYAPP_USER,
passwd = MYAPP_PASS,
host = MYAPP_HOST,
port = int(MYAPP_PORT),
db = MYAPP_DATABASE,
charset = 'utf8', # 設定を追加
)
日本語を含むデータを操作するときは注意していきましょう!