码迷,mamicode.com
首页 > 数据库 > 详细

Load数据到MySQL,入库部分数据乱码问题

时间:2015-11-16 21:17:28      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:


面对着字符编码load到 MySQL的问题:可能是 gbk/utf-8/或者混合编码。

为了保证数据的原子性,雷哥的解决办法是:通过 Python转为16进制,然后通过 MySQL解析解析16进制,非常完美。


案例如下:

Python 的编码case:

>>> import binascii

       ### 转为16进制

>>> print binascii.b2a_hex(‘wo草‘)

776fe88d89

       ### 转为汉字

>>> print binascii.a2b_hex(‘776fe88d89‘)

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)



Load数据到MySQL,入库部分数据乱码问题

标签:

原文地址:http://my.oschina.net/repine/blog/531096

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!