代码如下
import pandas as pd
from sqlalchemy import create_engine
def main(args):
engine = create_engine('mysql+pymysql://账号名:密码@数据库/数据库名')
#读取excel文件
df = pd.read_excel(r'C:\Users\星云\Desktop\test.xlsx')
#插入到数据库
df.to_sql('SQL表名', con=engine, if_exists='append', index=False)import pandas as pd报错信息TypeError: __init__() got multiple values for argument 'schema'
排查顺序
1、这可能是因为在调用 to_sql 方法时传递了重复的schema参数,为了避免,建议直接在to_sql里面加一个参数schema=None
2、查看pandas版本和sqlalchemy版本,sqlalchemy2.0.0及以上版本与pandas兼容不太好,这种情况有三种处理方式
方法一:升级pandas版本
pip install --upgrade pandas方法二:将SQLAlchemy的版本往下降,这里我采取的方法就是这个
pip install sqlalchemy==1.4.46
方法三:安装sqlalchemy-databricks
sqlalchemy-databricks
以代替SQLAlchemy,前提把SQLAlchemy卸载干净,以防到时冲突报错。