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)