我有以下代码从名为posts的表中删除一行。出于某种原因,该帖子未被删除。我也试过通过命令行手动管理命令,它工作得很好。我也确定post_id是正确的而不是null,因为我还尝试将其传回并打印并且ID正确显示。我应该提一下,它没有吐出错误。什么都没发生。
def deletePost(post_id):
con = sql.connect("database.db")
cur = con.cursor()
cur.execute("DELETE FROM posts WHERE id = (?)", [post_id])
con.close()
答案 0 :(得分:2)
在关闭提交更改之前,您没有提交:
检查一下。
cur.execute("DELETE FROM posts WHERE item = ?", (post_id,))
con.commit()
con.close()
sqlite的一般信息:
一个导入点是,元组中的逗号“,”。如果你有一个项目,那么在末尾添加逗号是必需的,但如果你在元组中有多个条目(你传递给sqlite),那么在最后一个项目后面没有逗号。