13 lines
647 B
Text
def read_state(self, folder: str) -> sqlite3.Row | None:
| |||
try:
| |||
con = sqlite3.connect(self.database, timeout=3)
| |||
con.row_factory = sqlite3.Row
| |||
try:
| |||
return con.execute(self.STATE_QUERY, (folder,)).fetchone()
| |||
finally:
| |||
con.close()
| |||
except sqlite3.OperationalError as e:
| |||
# База ещё не создана, занята или не совпадает схема - идём дальше
| |||
# без данных, но причину печатаем, чтобы она не оставалась скрытой
| |||
print(f'read_state({folder!r}): {e}')
| |||
return None
|