在使用Python3中的SQLite时TRUNCATE的问题

今天实习时,原先想借助以下代码将利用SQLite建立的data.db文件中表data的全部记录删除后再把某个DataFrame的信息写到表中,发现失败。

	con = lite.connect('D://data.db')
    con.execute("TRUNCATE TABLE data")
    sql.to_sql(tmpDf, name='data', con=con, index=False, if_exists='append')
    con.commit()
    con.close()

报错信息如下:
OperationalError: near “TRUNCATE”: syntax error
查阅相关文档后发现,SQLite的SQL语句是不支持truncate,想清空数据库文件中某个表的记录,最好使用:
DELETE FROM table_name
或者:
DELETE * FROM table_name
这种方法可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的。

上一篇:SQL语句中----删除表数据drop、truncate和delete的用法


下一篇:BZOJ 4517: [Sdoi2016]排列计数 [容斥原理]