これは古いスレッドだと思いますが、同じ問題で遭遇し、他の場所で解決策を見つけることができませんでした。
いくつかの実験の後、私は次のコードでこれを解決することができました:
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())
このようにしてシーケンスが作成され、列id
のデフォルト値として使用されます。 、SQLAlchemyによって暗黙的に作成された場合と同じ動作です。