diff options
Diffstat (limited to 'lib/sqlalchemy/orm/persistence.py')
-rw-r--r-- | lib/sqlalchemy/orm/persistence.py | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/lib/sqlalchemy/orm/persistence.py b/lib/sqlalchemy/orm/persistence.py index 373bd93fb..0a6ac98f6 100644 --- a/lib/sqlalchemy/orm/persistence.py +++ b/lib/sqlalchemy/orm/persistence.py @@ -1259,16 +1259,12 @@ class BulkUpdate(BulkUD): def _do_exec(self): if isinstance(self.values, (list, tuple)): - dict_type = util.OrderedDict - values = self.values + values = tuple((self._resolve_string_to_expr(k), v) + for k, v in self.values) else: - dict_type = dict - values = self.values.items() + values = {self._resolve_string_to_expr(k): v + for k, v in self.values.items()} - values = dict_type( - (self._resolve_string_to_expr(k), v) - for k, v in values - ) update_stmt = sql.update(self.primary_table, self.context.whereclause, values, **self.update_kwargs) |