Python中MYSQLdb出现乱码的解决方法

yipeiwu_com7年前Python基础

本文实例讲述了Python中MYSQLdb出现乱码的解决方法,分享给大家供大家参考。具体方法如下:

一般来说,在使用mysql最麻烦的问题在于乱码。

查看mysql的编码:

命令: 

复制代码 代码如下:
show variables like 'character_set_%';

可以看到如下结果:

character_set_client为客户端编码方式;
character_set_connection为建立连接使用的编码;
character_set_database数据库的编码;
character_set_results结果集的编码;
character_set_server数据库服务器的编码;

只要保证以上四个采用的编码方式一样,就不会出现乱码问题

然后可以直接在这里设置mysql的编码。

复制代码 代码如下:
set character_set_client = xxxxx

这样就将客户端编码修改过来了。

但是,对于已经建立好的数据库和数据表,编码还是没有变的,还是要使用alter命令去更改对应的编码

但是,即便修改了数据库的编码,在python中还是会存在存入数据库的时候的乱码问题,解决方法就是在链接数据库的时候指定编码。例如:

复制代码 代码如下:
sql_con = MySQLdb.connect(host=MYSQL_ADDR , user=MYSQL_USER , passwd=MYSQL_PWD , db=MYSQL_DB , charset="utf8")

这就指定了客户端的编码是utf8.然后就解决了乱码问题。

希望本文所述对大家的Python程序设计有所帮助。

相关文章

详解Python3中的Sequence type的使用

其实本来是要reverse一下list的,就去查了一下list[::-1]是什么意思,发现还有很多要注意的地方,所以就记一下。 主要是参照https://docs.python.org/...

pycharm下查看python的变量类型和变量内容的方法

pycharm下查看python的变量类型和变量内容的方法

用过Matlab的同学基本都知道,程序里面的变量内容可以很方便的查看到,但python确没这么方便,对于做数据处理的很不方便,其实不是没有这个功能,只是没有发现而已,今天整理一下供大家相...

python实现将读入的多维list转为一维list的方法

第一种:使用extend() >>> lines = open('test.txt').readlines() >>> lines ['1\n',...

python实现两张图片拼接为一张图片并保存

python实现两张图片拼接为一张图片并保存

本文实例为大家分享了python实现两张图片拼接为一张图片并保存的具体代码,供大家参考,具体内容如下 这里主要用Python扩展库pillow中Image对象的paste()方法把两张图...

python实现自动化报表功能(Oracle/plsql/Excel/多线程)

python实现自动化报表功能(Oracle/plsql/Excel/多线程)

日常会有很多固定报表需要手动更新,本文将利用python实现多线程运行oracle代码,并利用xlwings包和numpy包将结果写入到指定excel模版(不改变模版内容),并自动生成带...