summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2021-01-04 17:05:46 -0500
committerMike Bayer <mike_mp@zzzcomputing.com>2021-01-04 17:12:47 -0500
commitea467fccbe4337929b91e0daec12b8672fa7907c (patch)
tree889dd1c354e3b874f8b6ff2ae12564a4d2c93f75 /lib
parent640cd8a70f8a664b7834c5f74ec322fdea644043 (diff)
downloadsqlalchemy-ea467fccbe4337929b91e0daec12b8672fa7907c.tar.gz
Check for column expr in Oracle RETURNING check
Fixed regression in Oracle dialect introduced by :ticket:`4894` in SQLAlchemy 1.3.11 where use of a SQL expression in RETURNING for an UPDATE would fail to compile, due to a check for "server_default" when an arbitrary SQL expression is not a column. Fixes: #5813 Change-Id: I1977bb49bc971399195015ae45e761f774f4008d
Diffstat (limited to 'lib')
-rw-r--r--lib/sqlalchemy/dialects/oracle/base.py1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/sqlalchemy/dialects/oracle/base.py b/lib/sqlalchemy/dialects/oracle/base.py
index 2b4b268c2..1cc8b7aef 100644
--- a/lib/sqlalchemy/dialects/oracle/base.py
+++ b/lib/sqlalchemy/dialects/oracle/base.py
@@ -1017,6 +1017,7 @@ class OracleCompiler(compiler.SQLCompiler):
):
if (
self.isupdate
+ and isinstance(column, sa_schema.Column)
and isinstance(column.server_default, Computed)
and not self.dialect._supports_update_returning_computed_cols
):