from typing import Optional from sqlalchemy import Integer, String from sqlalchemy.orm import Mapped, mapped_column from app.db.base import Base class Course(Base): __tablename__ = "courses" id: Mapped[int] = mapped_column(Integer, primary_key=True, autoincrement=True) code: Mapped[Optional[str]] = mapped_column(String(32)) name: Mapped[str] = mapped_column(String(256)) stream: Mapped[Optional[str]] = mapped_column(String(16)) year: Mapped[Optional[int]] = mapped_column(Integer) semester: Mapped[Optional[int]] = mapped_column(Integer)