我正在从excel工作簿将数据加载到pandas数据框中,并在我收到上述错误时尝试将其推送到数据库。
我一开始认为数据库的整理是有问题的,我改为utf8_bin
接下来,我检查了我的数据库引擎创建语句,我也为编码添加了一个参数。
engine = create_engine('mysql+pymysql://root@localhost/test', encoding="utf-8")
但这些事情都不起作用我仍然从行中得到错误:
df.to_sql("strand", engine, if_exists="append", index=False)
我检查了to_sql方法是否有编码参数,但似乎并非如此。
答案 0 :(得分:9)
显然我需要将?charset-utf8添加到查询字符串以及编码变量,这导致我最终成为引擎创建语句
engine = create_engine('mysql+pymysql://root@localhost/test?charset=utf8', encoding="utf-8")