python连接mysql中文数据编码

系统是win7 x64

Python 2.7.6的site.py里面编码设定为 utf-8

py文件首行指定 #coding:utf-8

MySQL 5.5.38安装时指定代码为utf-8

peewee的连接数据库代码为:

[python] view plain copy
 
  1. db = MySQLDatabase(host = '127.0.0.1', user = 'root', passwd = '1', database = 'mz', charset = 'utf-8')  


不指定charset,会提示:插入的字符串不正确。

但是指定后,会提示如下错:

super(Connection, self).set_character_set(charset)
peewee.OperationalError: (2019, "Can't initialize character set utf-8 (path: C:
mysql\\share\charsets\)")

偶尔搜到文章,他是乱码。

试了一下,把utf-8改成utf8,结果就正常了。

在mysql的表看了一下,果然是:

在Win下,phton2.x 确实是编码麻烦。 

原文地址:https://www.cnblogs.com/mrdz/p/6022305.html