python mysql中查询数据,结果中文显示乱码


利用python写程序从mysql中读取数据写入excel中,结果发现中文显示乱码。

网上搜索了下方法:

  Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8), 同时文件保存的格式也应该是utf8
    MySQL数据库charset=utf-8 ,数据库的编码必须是utf8
    python连接MySQL时加上编码参数 conn = MySQLdb.Connection(host='localhost', user='root', passwd='123', db='test',charset='utf8')
    设置Python默认编码(个人感觉此无太多意义)

reload(sys)

sys.setdefaultencoding('utf-8')

二种

tmp = str(row[2])
tmp = tmp.decode('utf-8')


我的实际情况是将连接字符串加上charset=‘utf8’,成功。如下:(当然我的python文件设置编码为utf-8,mysql的编码也是utf-8)
MySQLdb.Connection(host='localhost', user='root', passwd='123', db='test',charset='utf8')


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM