Python连接MySQL数据库触发AttributeError报错求助
Python连接MySQL数据库触发AttributeError报错求助
你好呀!看起来你在尝试用Python连接MySQL数据库时踩了个小坑,先把你遇到的报错信息贴出来,方便大家一起排查:
$ python database.py Traceback (most recent call last): File "C:\Users\USER\Documents\TodayDatabase\database.py", line 3, in mydb = mysql.connector.connect( ^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: module 'mysql.connector' has no attribute 'connect'
咱们来一步步分析可能的问题和解决办法:
最常见的原因:装错了MySQL连接包
很多新手朋友会不小心安装错误的包,比如只装了mysql或者旧版的mysql-connector,但实际上官方推荐的、能正常提供connect方法的是mysql-connector-python包。你可以按下面的步骤操作:
- 先卸载可能存在的错误包:
pip uninstall mysql mysql-connector -y - 然后安装正确的官方包:
pip install mysql-connector-python
另一个容易踩的坑:脚本文件名和库名冲突
检查一下你的脚本文件是不是叫mysql.py或者mysql_connector.py?如果是的话,Python运行时会优先加载你自己的这个脚本,而不是你安装的第三方MySQL连接库,这就会导致找不到connect属性。
解决方法很简单:把你的脚本重命名成别的,比如my_db_connection.py就没问题了。
还有可能:Python环境不匹配
如果你用了虚拟环境,或者电脑上装了多个Python版本,可能会出现“包装在A环境,却用B环境运行脚本”的情况。你可以先确认一下:
- 运行脚本用的Python版本:
python --version - 安装包用的pip对应的Python版本:
pip --version
如果两者版本不一致,就切换到对应的环境重新安装包,或者用绝对路径的Python解释器来运行脚本。
备注:内容来源于stack exchange,提问作者GOROVA BRIGHTON
相关产品推荐
相关产品推荐

