如何在pandas中使用数据框为postgres设置表中的主键?

时间:2016-03-23 15:31:52

标签: postgresql pandas

我想将表存储到postgres 8.4(之前编辑过:8.1)中使用 pandas.DataFrame.to_sql 通过sqlalchemy使用以下命令。

df.to_sql("table_name",engine)

我正在使用postgres。如何在此表中设置我要添加到数据库的PRIMARY KEY?我尝试在df.to_sql中使用选项索引,但这似乎不起作用。

1 个答案:

答案 0 :(得分:2)

如果您的df包含要用作PRIMARY KEY的列“id”,请执行以下操作:

df.to_sql('table_name', engine, if_exists="append", index=False)
with engine.connect() as con:
    con.execute('ALTER TABLE table_name ADD PRIMARY KEY (id);')