CSVを読んで単純に外国人の名前をMariaDB上のテーブルに挿入するプログラムをpython2.7で作っています。今回、外国人の人名に特殊文字を含む方がおり、その方の挿入でエラーになります。どう回避したらよいでしょうか?
(自分なりにpython上でutf8やunicode変換してみたつもりなのですが、すべてうまくいきません。DBやテーブル設定がutf8であれば、意識することなく処理できると考えていたのですが...)
すみません、アドバイス、また私の説明不足の点などあれば指摘ください。
■エラーの出ている方のお名前は以下です。
xxxxÕxxxx
■エラー内容は以下です
_mysql_exceptions.OperationalError: {1336, "Incorrect string value: '\xD5oa' for column 'NAME' at row 1"}
■挿入をしようとしているカラムの設定はvarchar(180) utf8_general_ci です。
■他の設定情報は以下です。
python2.7 / Mariadb 10.2 / CentOS7
Server charset: UTF-8 Unicode (utf8)
Server connection collation:utf8mb4_unicode_ci
MariaDB [(none)]> show variables like 'char%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
MariaDB [(none)]>
回答1件
あなたの回答
tips
プレビュー