面对着字符编码load到 MySQL的问题:多是 gbk/utf-8/或者混合编码。mysql
为了保证数据的原始性,雷哥的解决办法是:经过 Python转为16进制,而后经过 MySQL解析解析16进制,很是完美。sql
案例以下:编码
Python 的编码case:spa
>>> import binasciiutf-8
### 转为16进制ci
>>> print binascii.b2a_hex('wo草')字符编码
776fe88d89import
### 转为汉字select
>>> print binascii.a2b_hex('776fe88d89')im
wo草
MySQL 的反编码 case
### 转为16进制
mysql> select hex('wo草');
+--------------+
| hex('wo草') |
+--------------+
| 776FE88D89 |
+--------------+
1 row in set (0.00 sec)
### 转为汉字
mysql> select unhex('776fe88d89')
-> ;
+---------------------+
| unhex('776fe88d89') |
+---------------------+
| wo草 |
+---------------------+
1 row in set (0.00 sec)