Source code for sqlalchemy_jdbcapi.odbc.exceptions

"""
ODBC-specific exceptions.

Most exceptions are proxied from pyodbc, but we provide our own hierarchy
for consistency with DB-API 2.0 specification.
"""

from __future__ import annotations


[docs] class Error(Exception): """Base exception for all ODBC errors."""
[docs] class Warning(Exception): # noqa: A001 """Exception raised for important warnings."""
[docs] class InterfaceError(Error): """Exception raised for errors related to the database interface."""
[docs] class DatabaseError(Error): """Exception raised for errors related to the database."""
[docs] class InternalError(DatabaseError): """Exception raised for internal database errors."""
[docs] class OperationalError(DatabaseError): """Exception raised for operational database errors."""
[docs] class ProgrammingError(DatabaseError): """Exception raised for programming errors."""
[docs] class IntegrityError(DatabaseError): """Exception raised for database integrity errors."""
[docs] class DataError(DatabaseError): """Exception raised for data processing errors."""
[docs] class NotSupportedError(DatabaseError): """Exception raised for unsupported operations."""