使用PyMySQL连接MySQL错误

使用PyMySQL连接MySQL错误

之前写了一个小项目,今天突然想起来,准备优化一下,但是原本好好的项目竟然跑不起来了

emmm....我真的啥都没干呀

具体错误是这样的:

Traceback (most recent call last):
  ...
  File "C:\Program Files\Python36\lib\site-packages\pymysql\__init__.py", line 90, in Connect
    return Connection(*args, **kwargs)
  File "C:\Program Files\Python36\lib\site-packages\pymysql\connections.py", line 706, in __init__
    self.connect()
  File "C:\Program Files\Python36\lib\site-packages\pymysql\connections.py", line 931, in connect
    self._get_server_information()
  File "C:\Program Files\Python36\lib\site-packages\pymysql\connections.py", line 1269, in _get_server_information
    self.server_charset = charset_by_id(lang).name
  File "C:\Program Files\Python36\lib\site-packages\pymysql\charset.py", line 38, in by_id
    return self._by_id[id]
KeyError: 255

出现这个问题首先想到的是看看MySQL服务有没有启动,但服务已经启动了,所以排除这个原因

接着想到的是PyMySQL库的问题,在网上遍寻之后,发现旧版的PyMySQL不支持长度超过255的字段,但MySQL8.0里却更新了很多字符集长度超过了255,所以,更新PyMySQL试试看

查看安装的第三方库版本,更新PyMySQL版本:

pip list
pip install --upgrade PyMySQL

更新之后错误解决了

最后说一句:MySQL8.0有风险,使用需谨慎

转载于:https://www.cnblogs.com/KYIMH/p/11248543.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值