Создание db.Sequence с помощью sqalchemy - PullRequest
0 голосов
/ 25 октября 2018

Я использую Postgres 10,5, Python 3, колбу и sqlalchemy.Я пытаюсь создать столбец в таблице users с помощью следующей команды

id = db.Column(db.Integer, db.Sequence('user_id_seq'), primary_key=True, autoincrement=True)

Однако, когда я запускаю этот код и создаю пользователя, я получаю сообщение об ошибке:error creating user (psycopg2.ProgrammingError) relation "user_id_seq" does not exist

Как программно создать последовательность 'user_id_seq'?Есть ли способ проверить, существует ли он, и создать его, если он не использует sqlalchemy

Ответы [ 2 ]

0 голосов
/ 26 октября 2018

Интересно, что в результате возникла проблема с тем, как была определена моя таблица базы данных.Я опустил стол, запустил код и последовательность существовала правильно.

0 голосов
/ 26 октября 2018

В этом случае вам нужно будет создать код для запуска при запуске банка.например:

def upgrade():
    op.execute("create sequence user_id_seq start with 1 increment by 1 nocache nocycle")

def downgrade():
    op.execute(sa.schema.DropSequence(sa.Sequence("user_id_seq")))
...