From 8e01a928d9559014413d08855c187b563c35ae72 Mon Sep 17 00:00:00 2001 From: Federico Caselli Date: Fri, 7 Aug 2020 22:38:24 +0200 Subject: Support data types for CREATE SEQUENCE in PostgreSQL Allow specifying the data type when creating a :class:`.Sequence` in PostgreSQL by using the parameter :paramref:`.Sequence.data_type`. Fixes: #5498 Change-Id: I2b4a80aa89b1503c56748dc3ecd2cf145faddd8b --- lib/sqlalchemy/dialects/postgresql/base.py | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'lib/sqlalchemy/dialects/postgresql/base.py') diff --git a/lib/sqlalchemy/dialects/postgresql/base.py b/lib/sqlalchemy/dialects/postgresql/base.py index 7717a2526..92e48f1f3 100644 --- a/lib/sqlalchemy/dialects/postgresql/base.py +++ b/lib/sqlalchemy/dialects/postgresql/base.py @@ -2184,6 +2184,17 @@ class PGDDLCompiler(compiler.DDLCompiler): generated.sqltext, include_table=False, literal_binds=True ) + def visit_create_sequence(self, create, **kw): + prefix = None + if create.element.data_type is not None: + prefix = " AS %s" % self.type_compiler.process( + create.element.data_type + ) + + return super(PGDDLCompiler, self).visit_create_sequence( + create, prefix=prefix, **kw + ) + class PGTypeCompiler(compiler.GenericTypeCompiler): def visit_TSVECTOR(self, type_, **kw): -- cgit v1.2.1