SqlAlchemy ORM异常。
sqlalchemy.orm.exc.
ConcurrentModificationError
¶sqlalchemy.orm.exc.
DetachedInstanceError
(*arg, **kw)¶试图访问已分离的映射实例上已卸载的属性。
sqlalchemy.orm.exc.
FlushError
(*arg, **kw)¶刷新()期间检测到无效条件。
sqlalchemy.orm.exc.
LoaderStrategyException
(applied_to_property_type, requesting_property, applies_to, actual_strategy_type, strategy_key)¶属性的加载程序策略不存在。
sqlalchemy.orm.exc.
MultipleResultsFound
(*arg, **kw)¶需要一个数据库结果,但找到了多个。
sqlalchemy.orm.exc.
NO_STATE
= (<class 'AttributeError'>, <class 'KeyError'>)¶检测实现可能引发的异常类型。
sqlalchemy.orm.exc.
NoResultFound
(*arg, **kw)¶需要数据库结果,但未找到任何结果。
sqlalchemy.orm.exc.
ObjectDeletedError
(base, state, msg=None)¶刷新操作无法检索与对象的已知主键标识相对应的数据库行。
当对象上的过期属性被访问时,或者当 Query.get()
用于检索检索到过期的对象。根据主键为目标行发出选择;如果未返回任何行,则引发此异常。
这个异常的真正含义就是不存在与持久对象关联的主键标识符的行。该行可能已被删除,或者在某些情况下,主键已更新为新值,超出了ORM对目标对象的管理范围。
sqlalchemy.orm.exc.
ObjectDereferencedError
(*arg, **kw)¶由于对象被垃圾收集,操作无法完成。
sqlalchemy.orm.exc.
StaleDataError
(*arg, **kw)¶操作遇到未经计数的数据库状态。
导致这种情况发生的条件包括:
刷新可能试图更新或删除行,并且在UPDATE或DELETE语句期间匹配了意外的行数。请注意,当使用version_id_col时,update或delete语句中的行也将与当前已知版本标识符匹配。
已刷新版本为“id”列的映射对象,从数据库返回的版本号与对象本身的版本号不匹配。
对象与其父对象分离,但该对象以前附加到垃圾收集的另一个父标识,如果新父对象确实是最新的“父对象”,则无法做出决定。
sqlalchemy.orm.exc.
UnmappedClassError
(cls, msg=None)¶为未知类请求了映射操作。
sqlalchemy.orm.exc.
UnmappedColumnError
(*arg, **kw)¶对未知列请求了映射操作。
sqlalchemy.orm.exc.
UnmappedError
(*arg, **kw)¶不存在涉及预期映射的异常的基。
sqlalchemy.orm.exc.
UnmappedInstanceError
(base, obj, msg=None)¶为未知实例请求了映射操作。