当我尝试做的事情时
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 历史记录没有显示任何混乱的输出。
谢谢!
Alembic 版本存储在数据库中的 alembic_version 表中。我看到表格中有两行相同的行。
你可以这样做:
DELETE FROM alembic_version WHERE version_num='3aae6532b560';
INSERT INTO alembic_version VALUES ('3aae6532b560');
上述查询可以通过限制删除行数在一个查询中完成,但不同数据库引擎之间 DELETE 查询中的限制是不同的。
恢复迁移的命令 恢复到以前的版本: 如果您刚刚应用了迁移并想要恢复,可以使用以下命令: 蒸馏器降级-1