worklog/db.py
2026-01-31 17:49:36 +01:00

20 lines
536 B
Python

from sqlalchemy import create_engine, event
from sqlalchemy.orm import sessionmaker
DATABASE_URL = "sqlite:///./worklog.db"
engine = create_engine(
DATABASE_URL,
connect_args={"check_same_thread": False},
future=True,
)
@event.listens_for(engine, "connect")
def _set_sqlite_pragma(dbapi_connection, connection_record) -> None:
cursor = dbapi_connection.cursor()
cursor.execute("PRAGMA foreign_keys=ON")
cursor.close()
SessionLocal = sessionmaker(bind=engine, autocommit=False, autoflush=False, future=True)