如何删除类似的 alembic 版本?

问题描述 投票:0回答:2

当我尝试做的事情时

alembic upgrade head

我收到此错误:

ERROR [alembic.util.messaging] Online migration expected to match one row when updating '3aae6532b560' to 'a1d8dae7cc' in 'alembic_version'; 2 found
FAILED: Online migration expected to match one row when updating '3aae6532b560'
to 'a1d8dae7cc' in 'alembic_version'; 2 found

alembic current

给出了两个相似版本的alembic,例如:

3aae6532b560
3aae6532b560

如何删除 Alembic 的相似版本之一,即复制版本?

alembic 历史记录没有显示任何混乱的输出。

谢谢!

python flask sqlalchemy flask-sqlalchemy alembic
2个回答
12
投票

Alembic 版本存储在数据库中的 alembic_version 表中。我看到表格中有两行相同的行。

你可以这样做:

DELETE FROM alembic_version WHERE version_num='3aae6532b560';
INSERT INTO alembic_version VALUES ('3aae6532b560');

上述查询可以通过限制删除行数在一个查询中完成,但不同数据库引擎之间 DELETE 查询中的限制是不同的。


0
投票

恢复迁移的命令 恢复到以前的版本: 如果您刚刚应用了迁移并想要恢复,可以使用以下命令: 蒸馏器降级-1

© www.soinside.com 2019 - 2024. All rights reserved.