summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/sql
diff options
context:
space:
mode:
authormike bayer <mike_mp@zzzcomputing.com>2020-06-28 02:34:18 +0000
committerGerrit Code Review <gerrit@bbpush.zzzcomputing.com>2020-06-28 02:34:18 +0000
commit021994685b55c0bca0d50c163ff5f9e9441fc037 (patch)
tree45726733668a15f21c5ebe6b3754046f5d527860 /lib/sqlalchemy/sql
parentba047cc8cab22541e88ce91936162d6e8164991a (diff)
parent08c46eea924d23a234bf3feea1a928eb8ae8a00a (diff)
downloadsqlalchemy-021994685b55c0bca0d50c163ff5f9e9441fc037.tar.gz
Merge "ORM executemany returning"
Diffstat (limited to 'lib/sqlalchemy/sql')
-rw-r--r--lib/sqlalchemy/sql/crud.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/sqlalchemy/sql/crud.py b/lib/sqlalchemy/sql/crud.py
index c80d95a2c..85112f850 100644
--- a/lib/sqlalchemy/sql/crud.py
+++ b/lib/sqlalchemy/sql/crud.py
@@ -157,6 +157,12 @@ def _get_crud_params(compiler, stmt, compile_state, **kw):
values = _extend_values_for_multiparams(
compiler, stmt, compile_state, values, kw
)
+ elif not values and compiler.for_executemany:
+ # convert an "INSERT DEFAULT VALUES"
+ # into INSERT (firstcol) VALUES (DEFAULT) which can be turned
+ # into an in-place multi values. This supports
+ # insert_executemany_returning mode :)
+ values = [(stmt.table.columns[0], "DEFAULT")]
return values