DAO(Data Access Object)数据库程序接口的异常类案例

看看HP vertica的python DAO定义的教科书级别的异常类吧
 
【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
}
 
 

**************************************************************
** 欢迎转发,注明原文:blog.csdn.net/clark_xu   徐长亮的专栏
** 谢谢您的支持,欢迎关注微信公众号:clark_blog 
**************************************************************

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值