python查询mysql中文乱码问题
问题:
python2.7查询或者插入中文数据在mysql中的时候出现中文乱码
---
可能情况:
1.mysql数据库各项没有设置编码,默认为'latin'
2.使用MySQL.connect的时候没有设置默认编码
3.没有设置python的编码,python2.7默认为'ascii'
4.没有解码
---
解决方法:
1.设置mysql的编码
ubuntu执行下列语句:
**sudovim/etc/mysql/my.cnf**
然后在里面插入语句:
[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
退出vim
重新启动mysql:
**sudoservicemysqlrestart**
2.在code中设置MySQLdb的连接编码参数
db=MySQLdb.connect(user='...',db='...',passwd='...',host='...',charset='utf8')
3.在code中设置python默认编码
#-*-coding:utf-8-*-
importsys
reload(sys)
sys.setdefaultencoding('utf-8')
4.记得要解码
t=cursor.fetchall()
s=t[0][1].decode('utf-8')
热门推荐
10 女性生日祝福语简短优美
11 别人转岗的祝福语简短
12 欢天喜地盖新房祝福语简短
13 兔年祝福语简短100字
14 新年给大哥祝福语简短
15 祝福语老人简短话语
16 员工对同事祝福语简短
17 公司新年祝福语简短的
18 高考给舍友祝福语简短