我正在用熊猫读取和写入MySQL表,并且我很确定在写入过程中尝试设置为索引的值是唯一的。
我检查了没有索引的表,而count(distinct(id))
的行数与count(id)
相同。
但是,我仍然出现错误
'ValueError: duplicate name in index/columns: cannot insert product_id, already exists'
如果我设置
index=True, index_label="id"
我尝试过reset_index
,但没有帮助。
df.to_sql(name=config.DB_TABLE, con=connection, schema=config.DB_SCHEMA, if_exists='fail', index=True, index_label="id")
我在做什么错了?
答案 0 :(得分:0)
我遇到了同样的问题,并想知道。问题是,在编程的同时,我在DataFrame中添加了一列。因此,这些列不再与SQL列匹配。您应该检查列的匹配情况。