PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

sqlalchemy e incrementi automatici con postgresql

Mi rendo conto che questo è un thread vecchio, ma ci sono imbattuto con lo stesso problema e non sono riuscito a trovare una soluzione da nessun'altra parte.

Dopo alcuni esperimenti sono stato in grado di risolverlo con il seguente codice:

TABLE_ID = Sequence('table_id_seq', start=1000)

class Table(Base):
    __tablename__ = 'table'

    id = Column(Integer, TABLE_ID, primary_key=True, server_default=TABLE_ID.next_value())

In questo modo la sequenza viene creata e utilizzata come valore predefinito per la colonna id , con lo stesso comportamento come se fosse creato implicitamente da SQLAlchemy.