一、原代码
df = pd.DataFrame(values_batch, columns=field_list)
escaped_username = urllib.parse.quote_plus(db_user)
escaped_password = urllib.parse.quote_plus(db_password)
conn = create_engine(f"mysql+pymysql://{escaped_username}:{escaped_password}@{db_host}:{db_port}/{db_name}", echo=False)
df.to_sql(table, conn, if_exists='append', index=False)
报错sqlalchemy.exc.InvalidRequestError: Could not reflect: requested table(s) not available in Engine
二、修改
df.to_sql(table.lower(), conn, if_exists='append', index=False)
df格式使engine对表的大小写敏感,要改为小写
文章讲述了在使用pandasDataFrame将数据写入MySQL数据库时遇到的`InvalidRequestError`,原因在于DataFrame对数据库表名的大小写敏感。通过将table名转换为小写解决了这个问题。

2159

被折叠的 条评论
为什么被折叠?



