我有一个表在我的数据库中称为'mytable'。我想清除它,这样我就可以继续从中收集和分析"新数据"。
比如
conn = psycopg2.connect(database = mydb_name, host = mydb_server, user = mydb_uname, password = mydb_pwd)
cur = conn.cursor()
cur.execute("DROP TABLE mytable;")
对我不起作用,因为据我所知,这会破坏表。我不想破坏/重建……只是为了刷新所有数据。
我怎样才能解决这个问题?
Truncate tablename
是有用的,表停留只是删除数据!
如果您有外键,则需要使用以下
Truncate tablename CASCADE
对于许多表这样做
Truncate table1, table2, table3
你的例子 Cur.execute("truncate mytable;")
这个sql查询应该删除表中的所有记录…
DELETE FROM mytable; // not DELETE * FROM mytable;