diff options
| author | mike bayer <mike_mp@zzzcomputing.com> | 2023-02-27 04:22:37 +0000 |
|---|---|---|
| committer | Gerrit Code Review <gerrit@bbpush.zzzcomputing.com> | 2023-02-27 04:22:37 +0000 |
| commit | ccf16a933bcb230055b2503ac571a13a4e284be5 (patch) | |
| tree | f72a9d6756e3b4bc937fcd100fa8012ac7dcef4a /lib/sqlalchemy | |
| parent | 16d3dad4490fc4915096b7963f21e6b591b15ba7 (diff) | |
| parent | 71693c94d52612a5e88128575ff308ee4a923c00 (diff) | |
| download | sqlalchemy-ccf16a933bcb230055b2503ac571a13a4e284be5.tar.gz | |
Merge "ExcludeConstraint literal_compile" into main
Diffstat (limited to 'lib/sqlalchemy')
| -rw-r--r-- | lib/sqlalchemy/dialects/postgresql/base.py | 3 | ||||
| -rw-r--r-- | lib/sqlalchemy/dialects/postgresql/ext.py | 15 |
2 files changed, 9 insertions, 9 deletions
diff --git a/lib/sqlalchemy/dialects/postgresql/base.py b/lib/sqlalchemy/dialects/postgresql/base.py index 255c72042..3ba103802 100644 --- a/lib/sqlalchemy/dialects/postgresql/base.py +++ b/lib/sqlalchemy/dialects/postgresql/base.py @@ -2350,8 +2350,9 @@ class PGDDLCompiler(compiler.DDLCompiler): constraint ) elements = [] + kw["include_table"] = False + kw["literal_binds"] = True for expr, name, op in constraint._render_exprs: - kw["include_table"] = False exclude_element = self.sql_compiler.process(expr, **kw) + ( (" " + constraint.ops[expr.key]) if hasattr(expr, "key") and expr.key in constraint.ops diff --git a/lib/sqlalchemy/dialects/postgresql/ext.py b/lib/sqlalchemy/dialects/postgresql/ext.py index 0f5efb1de..22604955d 100644 --- a/lib/sqlalchemy/dialects/postgresql/ext.py +++ b/lib/sqlalchemy/dialects/postgresql/ext.py @@ -164,16 +164,15 @@ class ExcludeConstraint(ColumnCollectionConstraint): :param \*elements: A sequence of two tuples of the form ``(column, operator)`` where - "column" is a SQL expression element or a raw SQL string, most - typically a :class:`_schema.Column` object, - and "operator" is a string - containing the operator to use. In order to specify a column name - when a :class:`_schema.Column` object is not available, - while ensuring + "column" is a SQL expression element or the name of a column as + string, most typically a :class:`_schema.Column` object, + and "operator" is a string containing the operator to use. + In order to specify a column name when a :class:`_schema.Column` + object is not available, while ensuring that any necessary quoting rules take effect, an ad-hoc :class:`_schema.Column` or :func:`_expression.column` - object should be - used. + object should be used. ``column`` may also be a string SQL + expression when passed as :func:`_expression.literal_column` :param name: Optional, the in-database name of this constraint. |
