From a357baec856bb73c511f8f8484d316f19a29252a Mon Sep 17 00:00:00 2001 From: Federico Caselli Date: Tue, 30 Mar 2021 23:15:04 +0200 Subject: Fix MSSQL / Oracle limit/offset regressions Fixed a regression in MSSQL 2012+ that prevented the order clause to be rendered when ``offset=0`` is used in a subquery. Fixed critical regression where the Oracle compiler would not maintain the correct parameter values in the LIMIT/OFFSET for a select due to a caching issue. Co-authored-by: Mike Bayer Fixes: #6163 Fixes: #6173 Change-Id: Ieb12354271d09ad935d684ee0db4fa0128837215 --- lib/sqlalchemy/sql/selectable.py | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'lib/sqlalchemy/sql') diff --git a/lib/sqlalchemy/sql/selectable.py b/lib/sqlalchemy/sql/selectable.py index 7c53f437c..d28ac7753 100644 --- a/lib/sqlalchemy/sql/selectable.py +++ b/lib/sqlalchemy/sql/selectable.py @@ -69,6 +69,14 @@ class _OffsetLimitParam(BindParameter): def _limit_offset_value(self): return self.effective_value + def _render_literal_execute(self): + return _OffsetLimitParam( + self.key, + self.value, + type_=self.type, + literal_execute=True, + ) + @util.deprecated( "1.4", -- cgit v1.2.1