Исключения ORM¶
Исключения в SQLAlchemy ORM.
Object Name | Description |
---|---|
alias of |
|
Типы исключений, которые могут быть вызваны реализацией инструментария. |
-
attribute
sqlalchemy.orm.exc..
sqlalchemy.orm.exc.ConcurrentModificationError¶ alias of
StaleDataError
- exception sqlalchemy.orm.exc.DetachedInstanceError¶
Попытка доступа к незагруженным атрибутам сопоставленного экземпляра, который отсоединен.
- exception sqlalchemy.orm.exc.FlushError¶
Во время выполнения функции flush() было обнаружено недопустимое состояние.
- exception sqlalchemy.orm.exc.LoaderStrategyException¶
Стратегия загрузчика для атрибута не существует.
-
method
sqlalchemy.orm.exc.LoaderStrategyException.
__init__(applied_to_property_type: Type[Any], requesting_property: MapperProperty[Any], applies_to: Optional[Type[MapperProperty[Any]]], actual_strategy_type: Optional[Type[LoaderStrategy]], strategy_key: Tuple[Any, ...])¶
-
method
- sqlalchemy.orm.exc.NO_STATE = (<class 'AttributeError'>, <class 'KeyError'>)¶
Типы исключений, которые могут быть вызваны реализацией инструментария.
- exception sqlalchemy.orm.exc.ObjectDeletedError¶
Операция обновления не смогла получить строку базы данных, соответствующую известному идентификатору первичного ключа объекта.
Операция обновления выполняется, когда к объекту обращается атрибут с истекшим сроком действия или когда
Query.get()
используется для получения объекта, который при получении определяется как истекший. Выполняется SELECT для целевого ряда на основе первичного ключа; если ряд не возвращается, возникает исключение.Истинный смысл этого исключения заключается в том, что для идентификатора первичного ключа, связанного с постоянным объектом, не существует строки. Строка могла быть удалена, или в некоторых случаях первичный ключ был обновлен до нового значения, вне управления ORM целевым объектом.
-
method
sqlalchemy.orm.exc.ObjectDeletedError.
__init__(state: InstanceState[Any], msg: Optional[str] = None)¶
-
method
- exception sqlalchemy.orm.exc.ObjectDereferencedError¶
Операция не может завершиться из-за того, что объект находится в процессе сборки мусора.
- exception sqlalchemy.orm.exc.StaleDataError¶
Операция столкнулась с неучтенным состоянием базы данных.
К условиям, которые вызывают это, относятся:
Возможно, при попытке обновления или удаления строк в операторе UPDATE или DELETE было сопоставлено непредвиденное количество строк. Обратите внимание, что при использовании version_id_col строки в операторах UPDATE или DELETE также сопоставляются с текущим известным идентификатором версии.
Сопоставленный объект с version_id_col был обновлен, и номер версии, полученный из базы данных, не совпадает с номером версии самого объекта.
Объект отделяется от своего родительского объекта, однако ранее объект был присоединен к другому родительскому идентификатору, который был собран в мусор, и невозможно решить, действительно ли новый родитель был последним «родителем».
- exception sqlalchemy.orm.exc.UnmappedClassError¶
Была запрошена операция сопоставления для неизвестного класса.
-
method
sqlalchemy.orm.exc.UnmappedClassError.
__init__(cls: Type[_T], msg: Optional[str] = None)¶
-
method
- exception sqlalchemy.orm.exc.UnmappedColumnError¶
Была запрошена операция отображения на неизвестный столбец.
- exception sqlalchemy.orm.exc.UnmappedError¶
База для исключений, связанных с отсутствием ожидаемых отображений.
- exception sqlalchemy.orm.exc.UnmappedInstanceError¶
Операция сопоставления была запрошена для неизвестного экземпляра.
-
method
sqlalchemy.orm.exc.UnmappedInstanceError.
__init__(obj: object, msg: Optional[str] = None)¶
-
method