mirror of
https://github.com/sqlalchemy/sqlalchemy.git
synced 2026-06-02 13:59:02 -04:00
see also for session commit, rollback
This commit is contained in:
Vendored
+4
@@ -780,6 +780,8 @@ required after a flush fails, even though the underlying transaction will have
|
||||
been rolled back already - this is so that the overall nesting pattern of
|
||||
so-called "subtransactions" is consistently maintained.
|
||||
|
||||
.. _session_committing:
|
||||
|
||||
Committing
|
||||
----------
|
||||
|
||||
@@ -818,6 +820,8 @@ model to some degree since the :class:`~sqlalchemy.orm.session.Session`
|
||||
behaves in exactly the same way with regard to attribute state, except no
|
||||
transaction is present.
|
||||
|
||||
.. _session_rollback:
|
||||
|
||||
Rolling Back
|
||||
------------
|
||||
|
||||
|
||||
@@ -655,6 +655,10 @@ class Session(_SessionClassMethods):
|
||||
to the first real transaction are closed. Subtransactions occur when
|
||||
begin() is called multiple times.
|
||||
|
||||
.. seealso::
|
||||
|
||||
:ref:`session_rollback`
|
||||
|
||||
"""
|
||||
if self.transaction is None:
|
||||
pass
|
||||
@@ -678,11 +682,16 @@ class Session(_SessionClassMethods):
|
||||
multiple times), the subtransaction will be closed, and the next call
|
||||
to ``commit()`` will operate on the enclosing transaction.
|
||||
|
||||
For a session configured with autocommit=False, a new transaction will
|
||||
When using the :class:`.Session` in its default mode of
|
||||
``autocommit=False``, a new transaction will
|
||||
be begun immediately after the commit, but note that the newly begun
|
||||
transaction does *not* use any connection resources until the first
|
||||
SQL is actually emitted.
|
||||
|
||||
.. seealso::
|
||||
|
||||
:ref:`session_committing`
|
||||
|
||||
"""
|
||||
if self.transaction is None:
|
||||
if not self.autocommit:
|
||||
|
||||
Reference in New Issue
Block a user