今天准备用python3连接mysql 处理一些数据,发现从数据库中取出的数据放到Python3中进行输出都是乱码
利用sql语句
SHOW VARIABLES LIKE '%char%';
检查了数据库,确实显示是utf8编码,按理来python3已经规避掉中文编码问题了,所以连decode函数都没有了,这让我很疑惑
最后检查出原因:
在连接数据库中也要选择编码选项,之前漏掉了charset='utf8'这个参数了,加上就好了,直接输出的中文不用解码什么的都很正常
conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='123456',db='estate',charset='utf8')