luscenje_struktur/src/database.py
Ozbolt Menegatti 4124036474 match_num now loaded from database
and --keep-db deprecated in favour of --new-db (harder for me to fu*k up)
2019-09-09 15:29:15 +02:00

36 lines
1.0 KiB
Python

import sqlite3
import os
class Database:
def __init__(self, args):
filename = ":memory:" if args.db is None else args.db
if args.new_db and os.path.exists(filename):
os.remove(filename)
self.new = not os.path.exists(filename)
self.db = sqlite3.connect(filename)
self.init("CREATE TABLE StepsDone ( step varchar(32) )")
self.commit()
def execute(self, *args, **kwargs):
return self.db.execute(*args, **kwargs)
def init(self, *args, **kwargs):
# same as execute, only skipped if not a new database file
if self.new:
return self.execute(*args, **kwargs)
def commit(self):
self.db.commit()
def is_step_done(self, step_name):
wc_done = self.db.execute("SELECT count(*) FROM StepsDone WHERE step=?", (step_name, )).fetchone()
return wc_done[0] != 0
def step_is_done(self, step_name):
self.db.execute("INSERT INTO StepsDone (step) VALUES (?)", (step_name, ))
self.db.commit()