Python - sqlite3.OperationalError: database is locked

Merhaba, programın bir kısmında kullanıcıya database de yer alan bir tablo içerisindeki verileri temizlemesine müsade ettiğim bir fonksiyon var. Aşağıdaki;

import sqlite3, time

def yeni_donem():
    con = sqlite3.connect("database.db")
    cursor = con.cursor()
    cursor.execute("DELETE FROM KREDI_KARTI")
    con.commit()
    cursor.execute("DELETE FROM BORC_ODEME")
    con.commit()
    con.close()

Bu kod kullanıcı tarafından çalıştırıldığı zaman şu hatayı dönüyor;

> cursor.execute("DELETE FROM KREDI_KARTI")
> sqlite3.OperationalError: database is locked

Tam olarak kitli kelimesinden anlamam gerekeni pek çözemedim, database dosyasını bu işlemi yapmadan önce açmama rağmen kilitlidir hatasının üstesinden gelemedim. Yardımcı olabilecek var mı?

1 Beğeni

Eğer database’inizde önemli bir şey yoksa silip yeniden oluşturabilirsiniz. Sorunun sebepleri ve asıl çözümleri için buralara bakabilirsiniz, ki kodunuzdaki bir hatanın bu duruma sebep oluyor olması ihtimaline karşı bakmanız iyi olur:

1 Beğeni

tamamdır teşekkürler

1 Beğeni