Python Sqlite 3 ile Veriyi Silemiyorum

Python veri tabanımda ceza tarihi yanlış olan verileri silmek istiyorum :
Ekran görüntüsü 2021-07-19 003109

Şu şekilde kod yazdım ;

import sqlite3 as sql
vt = sql.connect("trafik_kayitlari.sqlite")
vt.cursor()
ceza_tarihleri = [2012,2015,2010,2014]
for i in ceza_tarihleri:
    print(i)
    vt.execute("DELETE FROM trafik_cezalari WHERE ceza_tarihi =?",["-{0}".format(i)])
vt.commit()
vt.close()

Bu kodları terminale yazdığımda hata almasam da veriler silinmiyor.Bunun nedeni nedir?

Selam.

Acaba silmek istediğiniz ceza tarihleri integer tipinde mi eklendi?

Şöyle deneyin bir:

for i in ceza_tarihleri:
    vt.execute("DELETE FROM trafik_cezalari WHERE ceza_tarihi=?", (-i,))
vt.commit()

Kodları Şu Şekilde Düzelttim ve Çalıştı :

import sqlite3 as sql
vt = sql.connect("trafik_kayitlari.sqlite")
vt.cursor()
ceza_tarihleri = [-2012,-2015,-2010,-2014]
for i in ceza_tarihleri:
    print(i)
    vt.execute("DELETE FROM trafik_cezalari WHERE ceza_tarihi ={}".format(i))
vt.commit()
vt.close()

2 Beğeni