Python 使用PyMySql 库 连接MySql数据库时 查询中文遇到的乱码问题(实测可行) python 连接 MySql 中文乱码 pymysql库
最近所写的代码中需要用到python去连接MySql数据库,因为是用PyQt5来构建的GUI,原本打算使用PyQt5中的数据库连接方法,后来虽然能够正确连接上发现还是不能提交修改内容,最后在qq交流群中有网友说自己遇到这种问题都是使用第三方的方法来解决,于是我便想起了用 PyMySql 这个Python连接Mysql的库来进行实现,一切都很顺,但是只有到了中文内容的读取时总是出现各种乱码。
sql="select id, title, pub_date, pub_url from message_info" cursor.execute(sql) result=cursor.fetchall() for each in result: each[1].encode('latin1').decode('utf-8')
上面的代码可以使查询到的 MySql 数据 中的中文不出现乱码。
也就是说 调用 pymysql 返回的 含有中文字符的字符串 这里是 each[1] , 对它进行解码,用 latin1 进行解码, 然后使用 utf-8 再进行编码便可以得到正确的中文字符。
本博客是博主个人学习时的一些记录,不保证是为原创,个别文章加入了转载的源地址,还有个别文章是汇总网上多份资料所成,在这之中也必有疏漏未加标注处,如有侵权请与博主联系。
如果未特殊标注则为原创,遵循 CC 4.0 BY-SA 版权协议。
posted on 2018-05-29 22:21 Angry_Panda 阅读(1284) 评论(0) 编辑 收藏 举报