千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

首页 视频教程 培训课程 师资团队 技术干货 常见问题 面试题 职场就业 零基础学Python 行业资讯
【热点话题】 Python技术干货 Python学习教程 Python学习笔记 Python面试题 Python培训问答 Python培训机构哪些好 Python职场就业
当前位置:Python培训  >  Python学习教程  >  python查询mysql中文乱码问题

python查询mysql中文乱码问题

来源:千锋教育
发布人:wjy
时间: 2022-11-29 16:58:44 1669712324

  Python连接mysql数据库时,读取数据库中的中文出现乱码,所有中文都显示为问号了,我解决问题的步骤如下:

  一、为什么出现乱码,出现乱码的可能情况情况:

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

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

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

  4.没有解码

python查询mysql中文乱码问题

  二、为大家分享几种解决方法,如下:

  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')

  以上就是python查询mysql中文乱码问题以及解决方法,大家对症下药就好了。

  注:本文部分文字和图片来源于网络,如有侵权,请联系删除。版权归原作者所有!此页面下方声明无效!

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

最新文章NEW

相关推荐HOT

更多>>
开班信息
北京校区
  • 北京校区
  • 大连校区
  • 广州校区
  • 成都校区
  • 杭州校区
  • 长沙校区
  • 合肥校区
  • 南京校区
  • 上海校区
  • 深圳校区
  • 武汉校区
  • 郑州校区
  • 西安校区
  • 青岛校区
  • 重庆校区
  • 太原校区
  • 沈阳校区
  • 南昌校区
  • 哈尔滨校区

14天品质课程免费学

10年以上业内强师带你蜕变精英

提交领取