SqlDatabase

Bases: Protocol

Source code in src/alpha/interfaces/sql_database.py
@runtime_checkable
class SqlDatabase(Protocol):
    _host: ClassVar[str]
    _port: ClassVar[int]
    _username: ClassVar[str]
    _password: ClassVar[str]
    _db_name: ClassVar[str]
    _db_type: ClassVar[str]
    _schema_name: ClassVar[str]
    _mapper: ClassVar[SqlMapper | None]
    _connection_string: ClassVar[str]
    _engine: ClassVar[Engine]
    _session_factory: ClassVar[Session]

    def get_session(self) -> Session: ...

    def engine(self) -> Engine: ...

    def create_tables(
        self, metadata: sa.MetaData, tables: list[sa.Table] | None = None
    ) -> None: ...

    def drop_tables(
        self, metadata: sa.MetaData, tables: list[sa.Table] | None = None
    ) -> None: ...