diff options
| author | mike bayer <mike_mp@zzzcomputing.com> | 2020-06-28 02:34:18 +0000 |
|---|---|---|
| committer | Gerrit Code Review <gerrit@bbpush.zzzcomputing.com> | 2020-06-28 02:34:18 +0000 |
| commit | 021994685b55c0bca0d50c163ff5f9e9441fc037 (patch) | |
| tree | 45726733668a15f21c5ebe6b3754046f5d527860 /lib/sqlalchemy/engine/default.py | |
| parent | ba047cc8cab22541e88ce91936162d6e8164991a (diff) | |
| parent | 08c46eea924d23a234bf3feea1a928eb8ae8a00a (diff) | |
| download | sqlalchemy-021994685b55c0bca0d50c163ff5f9e9441fc037.tar.gz | |
Merge "ORM executemany returning"
Diffstat (limited to 'lib/sqlalchemy/engine/default.py')
| -rw-r--r-- | lib/sqlalchemy/engine/default.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/sqlalchemy/engine/default.py b/lib/sqlalchemy/engine/default.py index 0fe3b085b..51bff223c 100644 --- a/lib/sqlalchemy/engine/default.py +++ b/lib/sqlalchemy/engine/default.py @@ -824,7 +824,7 @@ class DefaultExecutionContext(interfaces.ExecutionContext): if self.isinsert or self.isupdate or self.isdelete: self.is_crud = True self._is_explicit_returning = bool(compiled.statement._returning) - self._is_implicit_returning = ( + self._is_implicit_returning = bool( compiled.returning and not compiled.statement._returning ) @@ -1291,11 +1291,12 @@ class DefaultExecutionContext(interfaces.ExecutionContext): result.out_parameters = out_parameters def _setup_dml_or_text_result(self): - if self.isinsert and not self.executemany: + if self.isinsert: if ( not self._is_implicit_returning and not self.compiled.inline and self.dialect.postfetch_lastrowid + and not self.executemany ): self._setup_ins_pk_from_lastrowid() @@ -1375,7 +1376,7 @@ class DefaultExecutionContext(interfaces.ExecutionContext): getter = self.compiled._inserted_primary_key_from_lastrowid_getter self.inserted_primary_key_rows = [ - getter(None, self.compiled_parameters[0]) + getter(None, param) for param in self.compiled_parameters ] def _setup_ins_pk_from_implicit_returning(self, result, rows): |
