My database gets locked all the time and I don't know why.
Here's my DBHelper class:
class DBHelper():
def __init__(self, db = 'db1.sqlite'):
try:
self.conn = sqlite3.connect(db)
self.curs = self.conn.cursor()
print('Connection is established')
self.conn.commit()
except:
return 'Connection error'
#finally:
# self.conn.close()
def sql_tables(self):
self.curs.execute("CREATE TABLE IF NOT EXISTS ARTICLES(Link text PRIMARY KEY, Tittle TEXT, Time TEXT, Article TEXT)")
self.curs.execute('CREATE TABLE IF NOT EXISTS TAGS(tag_id integer PRIMARY KEY, Tag text)')
self.curs.execute("CREATE TABLE IF NOT EXISTS ARTICLES_TAG(Article_id text PRIMARY KEY, tag_id integer, FOREIGN KEY (Article_id) REFERENCES ARTICLE(Link),FOREIGN KEY (tag_id) REFERENCES TAGS(tag_id))")
self.conn.commit()
I get OperationalError: database is locked
How can I fix it?