掉坑
这是我在完成一个定时完成数据库间备份的项目时,利用pandas的to_sql()写入数据时,遇到的报错。
完成报错如下:
sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (1054, "Unknown column 'fff' in 'field list'")
直译过来就是出现未知的表头’fff’。
爬坑技巧
显而易见,这是由于在合并多个表时,忽略了表头可能存在的差别。在实际情况中,表头不同很正常,但是我着手的这个项目表格格式统一,只是我在测试时用了不同表头的表,导致出现错误。
多提一句,合并表的代码如下:
for t_name, t_data in self.table_df.items():
t_data.to_sql(name='biao', con=conn, if_exists='append', index=True)
知识点:
if_exists='append’可以理解为追加模式,当然要保证表头一致才行。