]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
add doc for with_lockmode(), [ticket:2412]
authorMike Bayer <mike_mp@zzzcomputing.com>
Mon, 20 Feb 2012 14:42:34 +0000 (09:42 -0500)
committerMike Bayer <mike_mp@zzzcomputing.com>
Mon, 20 Feb 2012 14:42:34 +0000 (09:42 -0500)
lib/sqlalchemy/orm/query.py

index 1f6d0df2bd71896814c0d5949b86e32ad3e8271b..6e271f863ae20653eeb77a6f63e8d96af3713b3d 100644 (file)
@@ -970,7 +970,22 @@ class Query(object):
 
     @_generative()
     def with_lockmode(self, mode):
-        """Return a new Query object with the specified locking mode."""
+        """Return a new Query object with the specified locking mode.
+
+        :param mode: a string representing the desired locking mode. A
+            corresponding value is passed to the ``for_update`` parameter of
+            :meth:`~sqlalchemy.sql.expression.select` when the query is
+            executed. Valid values are:
+
+            ``'update'`` - passes ``for_update=True``, which translates to
+            ``FOR UPDATE`` (standard SQL, supported by most dialects)
+
+            ``'update_nowait'`` - passes ``for_update='nowait'``, which
+            translates to ``FOR UPDATE NOWAIT`` (supported by Oracle)
+
+            ``'read'`` - passes ``for_update='read'``, which translates to
+            ``LOCK IN SHARE MODE`` (supported by MySQL).
+        """
 
         self._lockmode = mode