class BulkUDCompileState(ORMDMLState): (source)
Known subclasses: sqlalchemy.orm.bulk_persistence.BulkORMDelete
, sqlalchemy.orm.bulk_persistence.BulkORMUpdate
Undocumented
Class | default |
Undocumented |
Class Method | can |
Undocumented |
Class Method | orm |
Undocumented |
Class Method | orm |
Undocumented |
Class Method | _adjust |
Apply extra criteria filtering. |
Class Method | _do |
setup auto sync strategy |
Class Method | _do |
Undocumented |
Class Method | _do |
Undocumented |
Class Method | _eval |
Undocumented |
Class Method | _get |
Undocumented |
Class Method | _get |
Undocumented |
Class Method | _interpret |
translate from local inherited table columns to base mapper primary key columns. |
Class Method | _resolved |
Undocumented |
Inherited from ORMDMLState
:
Class Method | get |
Undocumented |
Class Method | get |
Undocumented |
Class Variable | is |
Undocumented |
Instance Variable | from |
Undocumented |
Instance Variable | select |
Undocumented |
Class Method | _get |
Undocumented |
Class Method | _get |
Undocumented |
Class Method | _get |
Undocumented |
Class Method | _return |
Undocumented |
Method | _setup |
establish ORM column handlers for an INSERT, UPDATE, or DELETE which uses explicit returning(). |
Inherited from AbstractORMCompileState
(via ORMDMLState
):
Class Method | create |
Create a context for a statement given a :class:`.Compiler`. |
Class Method | orm |
Undocumented |
Inherited from CompileState
(via ORMDMLState
, AbstractORMCompileState
):
Class Method | get |
Undocumented |
Class Method | plugin |
Undocumented |
Method | __init__ |
Undocumented |
Class Variable | __slots__ |
Undocumented |
Class Variable | plugins |
Undocumented |
Instance Variable | statement |
Undocumented |
Class Method | _get |
Undocumented |
Class Variable | _ambiguous |
Undocumented |
def can_use_returning(cls, dialect:
Dialect
, mapper: Mapper[ Any]
, *, is_multitable: bool
= False, is_update_from: bool
= False, is_delete_using: bool
= False) -> bool
:
(source)
¶
sqlalchemy.orm.bulk_persistence.BulkORMDelete
, sqlalchemy.orm.bulk_persistence.BulkORMUpdate
Undocumented
def orm_pre_session_exec(cls, session, statement, params, execution_options, bind_arguments, is_pre_event): (source) ¶
Undocumented
def orm_setup_cursor_result(cls, session, statement, params, execution_options, bind_arguments, result): (source) ¶
Undocumented
Apply extra criteria filtering. For all distinct single-table-inheritance mappers represented in the table being updated or deleted, produce additional WHERE criteria such that only the appropriate subtypes are selected from the total results. Additionally, add WHERE criteria originating from LoaderCriteriaOptions collected from the statement.
def _do_pre_synchronize_auto(cls, session, statement, params, execution_options, bind_arguments, update_options): (source) ¶
setup auto sync strategy "auto" checks if we can use "evaluate" first, then falls back to "fetch" evaluate is vastly more efficient for the common case where session is empty, only has a few objects, and the UPDATE statement can potentially match thousands/millions of rows. OTOH more complex criteria that fails to work with "evaluate" we would hope usually correlates with fewer net rows.
def _do_pre_synchronize_evaluate(cls, session, statement, params, execution_options, bind_arguments, update_options): (source) ¶
Undocumented
def _do_pre_synchronize_fetch(cls, session, statement, params, execution_options, bind_arguments, update_options): (source) ¶
Undocumented
translate from local inherited table columns to base mapper primary key columns. Joined inheritance mappers always establish the primary key in terms of the base table. When we UPDATE a sub-table, we can only get RETURNING for the sub-table's columns. Here, we create a lookup from the local sub table's primary key columns to the base table PK columns so that we can get identity key values from RETURNING that's against the joined inheritance sub-table. the complexity here is to support more than one level deep of inheritance, where we have to link columns to each other across the inheritance hierarchy.