python查询mysql中文乱码问题

yipeiwu_com6年前Python基础

问题:

python2.7 查询或者插入中文数据在mysql中的时候出现中文乱码

---

可能情况:

1.mysql数据库各项没有设置编码,默认为'latin'

2.使用MySQL.connect的时候没有设置默认编码

3.没有设置python的编码,python2.7默认为'ascii'

4.没有解码

---

解决方法:

1.设置mysql的编码

ubuntu执行下列语句:
** sudo vim /etc/mysql/my.cnf **
然后在里面插入语句:

[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
退出 vim
重新启动mysql:
** sudo service mysql restart **

2.在code中设置MySQLdb的连接编码参数

db=MySQLdb.connect(user='...',db='...',passwd='...',host='...',charset='utf8')
3.在code中设置python默认编码

# -*-coding:utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
4.记得要解码

t = cursor.fetchall()
s = t[0][1].decode('utf-8')

相关文章

django js实现部分页面刷新的示例代码

django js实现部分页面刷新的示例代码

例子中,我用的是显示机器上的进程信息的表格,获取不同的机器的进程信息时,更新这个展示信息的表格,如下: 当我在输入框中输入ip时,我希望只是更新这个表格,页面其他部分不变,实现方式如下...

Python Property属性的2种用法

假设定义了一个类:C,该类必须继承自object类,有一私有变量_x 复制代码 代码如下: class C:  def __init__(self):   self.__x=None  ...

python文件和目录操作函数小结

python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块。 得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录...

人工智能最火编程语言 Python大战Java!

人工智能最火编程语言 Python大战Java!

开发者到底应该学习哪种编程语言才能获得机器学习或数据科学这类工作呢?这是一个非常重要的问题。我们在许多论坛上都有讨论过。现在,我可以提供我自己的答案并解释原因,但我们先看一些数据。毕竟,...

Python数据类型中的“冒号“[::]——分片与步长操作示例

Python数据类型中的“冒号“[::]——分片与步长操作示例

本文实例讲述了Python数据类型中的“冒号“[::]——分片与步长操作。分享给大家供大家参考,具体如下: 例如有如下字符串: string = "welcome to jb51^_...