TypeError: init() got multiple values for argument ‘schema’

导读
今天在使用jupyter lab 连上MySQL 报的错,检索了大量网站才得以解决

报错原因:
SQLAlchemy的version 2.0.0(2023年1月26日发布)与早期版本的pandas不兼容

方法一:可以将Pandas版本升级到最新版本

pip install --upgrade pandas

方法二:将SQLAlchemy的版本往下降,这边我采取的方法就是这个

pip install sqlalchemy==1.4.46

这边下载完,若是jupyter ,重启下kernel或者切换一次

方法三:安装sqlalchemy-databricks 以代替SQLAlchemy,前提把SQLAlchemy卸载干净,以防到时冲突报错。

测试代码

import pandas as pdfrom sqlalchemy import create_engineimport pymysqlpymysql.install_as_MySQLdb()#MySQL 8.0 以上engine = create_engine('mysql+pymysql://:@localhost:3306/testDB')sql_query = 'select * from test;'df_read = pd.read_sql_query(sql_query, engine)