优草派  >   Python

python连接mysql乱码怎么办?学会这两步你就可以解决

陈立鑫            来源:优草派

本文主要介绍开发者在使用Python中常常遇见MYSQLdb出现乱码的解决方法,这也是Python操作MySQL数据库程序设计中非常常见的问题,下面让小编来教会大家如何解决这个问题。

python1

一般来说,我们开发者在使用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中MYSQLdb乱码问题。希望这个方法对大家有所帮助,会了的小伙伴赶紧去尝试一下吧。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行