我想附加到现有表,使用 pandas df.to_sql()
函数。
我设置了 if_exists='append'
,但我的表有主键。
我想在尝试append
到现有表时执行与insert ignore
等效的操作,这样我就可以避免重复输入错误。
这对 pandas 可行吗,还是我需要编写一个显式查询?
最佳答案
很遗憾,没有指定“INSERT IGNORE”的选项。这就是我绕过该限制的方法,将不重复的行插入到该数据库中(数据框名称为 df)
for i in range(len(df)):
try:
df.iloc[i:i+1].to_sql(name="Table_Name",if_exists='append',con = Engine)
except IntegrityError:
pass #or any other action
关于python - Pandas to_sql 在重复的主键上失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30337394/