python3使用pymysql遇到编码是lanti1,如何插入数据?

发布于 2022-09-02 15:44:03 字数 963 浏览 22 评论 0

问题

公司以前的项目是外包写的,数据库配置的时候
编码也没设置,就是lanti1
后来又直接改成了gbk......
使用php读取数据库的时候,数据没有乱码情况
但是python读取就麻烦了,因为编码是lanti1
python链接mysql并读取数据的时候,返回的编码总是乱码
链接数据库的时候也使用了下面的sql语句也不行
set names 'utf8'
set names 'gbk'
set names 'lanti1'

使用(set names 'lanti1')时,爆下面的错误
AttributeError: 'NoneType' object has no attribute 'encoding'

我现在遇到的问题:
    Python读取MySQL数据的时候,会有乱码,根本显示不了中文
    Python写入数据到Mysql的时候,也会是乱码

请问如何解决这两个问题?

CODE

使用下面的方法链接Mysql也是一样的乱码
pymysql.connect(host=host,port=port,user=user,passwd=passwd,db=dbName,charset='lanti1',
                                    cursorclass=pymysql.cursors.DictCursor)

环境信息

系统:Windows 10
语言:Python3.5
数据库:Mysql5.5

备注

在百度搜索过,只有Python2.7.x的解决办法
解决方法地址:
http://www.cnblogs.com/zhoujinyi/archive/2012/11/01/2748313.html

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

倦话 2022-09-09 15:44:03

MySQLdb.connect(host='', user='', passwd='', db='', port=3306, charset='utf8')

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文