summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/engine/default.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2008-01-31 17:48:22 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2008-01-31 17:48:22 +0000
commite1aa7573f210f76e2ddf8e45fc18007e11e5bbef (patch)
tree85d6631283fa022b17e43ead2344e3dfcb926a5e /lib/sqlalchemy/engine/default.py
parente13fdb965fbc31727e8653d444391a35d7533cc8 (diff)
downloadsqlalchemy-e1aa7573f210f76e2ddf8e45fc18007e11e5bbef.tar.gz
- added "autocommit=True" kwarg to select() and text(),
as well as generative autocommit() method on select(); for statements which modify the database through some user-defined means other than the usual INSERT/UPDATE/ DELETE etc., this flag will enable "autocommit" behavior during execution if no transaction is in progress [ticket:915]
Diffstat (limited to 'lib/sqlalchemy/engine/default.py')
-rw-r--r--lib/sqlalchemy/engine/default.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/sqlalchemy/engine/default.py b/lib/sqlalchemy/engine/default.py
index e78eedd5c..3b93862ae 100644
--- a/lib/sqlalchemy/engine/default.py
+++ b/lib/sqlalchemy/engine/default.py
@@ -164,10 +164,10 @@ class DefaultExecutionContext(base.ExecutionContext):
self.isupdate = compiled.isupdate
if isinstance(compiled.statement, expression._TextClause):
self.returns_rows = self.returns_rows_text(self.statement)
- self.should_autocommit = self.should_autocommit_text(self.statement)
+ self.should_autocommit = compiled.statement._autocommit or self.should_autocommit_text(self.statement)
else:
self.returns_rows = self.returns_rows_compiled(compiled)
- self.should_autocommit = self.should_autocommit_compiled(compiled)
+ self.should_autocommit = getattr(compiled.statement, '_autocommit', False) or self.should_autocommit_compiled(compiled)
if not parameters:
self.compiled_parameters = [compiled.construct_params()]