File size: 798 Bytes
6242a59 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
import os
from sqlalchemy import create_engine
from sqlalchemy.schema import MetaData
from sqlalchemy.orm import declarative_base
from modules import scripts
Base = declarative_base()
metadata: MetaData = Base.metadata
db_file = os.path.join(scripts.basedir(), "task_scheduler.sqlite3")
class BaseTableManager:
def __init__(self, engine = None):
# Get the db connection object, making the file and tables if needed.
try:
self.engine = engine if engine else create_engine(f"sqlite:///{db_file}")
except Exception as e:
print(f"Exception connecting to database: {e}")
raise e
def get_engine(self):
return self.engine
# Commit and close the database connection.
def quit(self):
self.engine.dispose()
|