我正在尝试在 python 中使用 to_sql 命令附加到 SQL 表。一切正常,但如果我运行我的命令 more tahn ,它显然会附加相同的数据。我知道这可以用 if_exists='replace' 解决,但是当我这样做时,我得到以下错误。
ProgrammingError: (pyodbc.ProgrammingError) ('42000', "[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]表 'table' 中的列 'AccountName' 的类型不能用作键索引中的列。(1919) (SQLExecDirectW)") [SQL: u'CREATE INDEX [ix_table_AccountName] ON table ([AccountName])']
我需要弄清楚如何,只附加表中没有的数据,删除我要附加的数据,如果它已经在表中,或者如何解决我的索引问题,这样我就可以使用 if_exists='replace '
engine = create_engine('mssql+pyodbc://UN:PW@DB')
df.to_sql("table", engine,if_exists='replace')