2017-03-15 18 views
0

私は、postsというテーブルから行を削除する次のコードを持っています。何らかの理由で、投稿が削除されていません。私はコマンドラインで手動でコマンドを管理しようとしましたが、うまくいきました。私はまたpost_idが正しいことを知っていると私はまたそれを戻して印刷しようとし、IDが正しく表示されたとしてnullではないことを知っています。私はそれが間違いを吐くことはないと言及する必要があります。ただ何も起こりません。SQLiteの削除クエリが機能していませんか?

def deletePost(post_id): 
con = sql.connect("database.db") 
cur = con.cursor() 
cur.execute("DELETE FROM posts WHERE id = (?)", [post_id]) 
con.close() 

答えて

1

近い変更をコミットする前に、コミットされていません。

はこれを確認してください。 sqliteのための

cur.execute("DELETE FROM posts WHERE item = ?", (post_id,)) 
con.commit() 
con.close() 

一般情報:

ワンインポートポイントはタプルに "" カンマ、です。あなたが1つのアイテムを持っているならば、最後にカンマを追加することは必須ですが、タプル(sqliteに渡す)に複数のエントリがある場合、最後のアイテムの後にコンマはありません。

関連する問題