Я использую Python 3 и sqlite3 в Windows. Я разрабатываю небольшое приложение, которое использует базу данных для хранения контактов. Я замечаю, что если приложение закрывается принудительно (либо по ошибке, либо заканчивая через диспетчер задач), я получаю ошибку sqlite3 (sqlite3.OperationalError: база данных заблокирована).
Я предполагаю, что это потому, что я не закрываю соединение с базой данных должным образом до закрытия приложения. Я пробовал это:
connection = sqlite3.connect(dbFile.db)
connection.commit()
connection.close()
, а затем пытается повторно открыть соединение, но заблокированная база данных остается. Есть ли способ закрыть базу данных перед сбоем? Или способ разблокировать базу данных в приложении? Прямо сейчас единственное решение, которое у меня есть, - это удалить базу данных и начать заново (что не будет работать долго).
Спасибо!