【1】
class Error(Exception):
class Warning(Exception):
class InterfaceError(Error):
class DatabaseError(Error):
【2】
class InternalError(DatabaseError):
class OperationalError(DatabaseError):
class ProgrammingError(DatabaseError):
class IntegrityError(DatabaseError):
class DataError(DatabaseError):
class NotSupportedError(DatabaseError):
【3】其他错误类型
class TimedOutError(OperationalError):
class ConnectionError(DatabaseError):
class SSLNotSupported(ConnectionError):
class MessageError(InternalError):
class EmptyQueryError(ProgrammingError):
class QueryError(ProgrammingError):
【4】其他错误
class LockFailure(QueryError):
class InsufficientResources(QueryError):
class OutOfMemory(QueryError):
class VerticaSyntaxError(QueryError):
class MissingSchema(QueryError):
class MissingRelation(QueryError):
class MissingColumn(QueryError):
class CopyRejected(QueryError):
class PermissionDenied(QueryError):
class InvalidDatetimeFormat(QueryError):
class DuplicateObject(QueryError):
class QueryCanceled(QueryError):
【6】编号定义
QUERY_ERROR_CLASSES = {
b'55V03': LockFailure,
b'53000': InsufficientResources,
b'53200': OutOfMemory,
b'42601': VerticaSyntaxError,
b'3F000': MissingSchema,
b'42V01': MissingRelation,
b'42703': MissingColumn,
b'22V04': CopyRejected,
b'42501': PermissionDenied,
b'22007': InvalidDatetimeFormat,
b'42710': DuplicateObject,
b'57014': QueryCanceled
}