撤消上次 Alembic 迁移
Undo last Alembic migration
我用 alembic revision --autogenerate
创建了一个迁移,用 alembic upgrade head
将它应用到我的开发数据库,然后意识到这不是我想要的。
如何还原迁移以便我可以调整它并重试?
假设你只想返回一个版本,使用alembic downgrade
with a relative migration identifier of -1:
alembic downgrade -1
这将 运行 您最新版本的 downgrade()
方法并更新 alembic_version
table 以指示您现在所在的版本。
如果需要返回多次迁移,运行
alembic history
查看项目中所有迁移的列表(从最新到最旧),然后复制并粘贴要返回的迁移的标识符:
alembic downgrade 8ac14e223d1e
目前没有从您的版本目录中删除 迁移的命令,因此如果您想完全清除所有错误迁移的痕迹,您需要删除该版本手动文件(如 4c009570237e_add_widget_table.py
)。
我用 alembic revision --autogenerate
创建了一个迁移,用 alembic upgrade head
将它应用到我的开发数据库,然后意识到这不是我想要的。
如何还原迁移以便我可以调整它并重试?
假设你只想返回一个版本,使用alembic downgrade
with a relative migration identifier of -1:
alembic downgrade -1
这将 运行 您最新版本的 downgrade()
方法并更新 alembic_version
table 以指示您现在所在的版本。
如果需要返回多次迁移,运行
alembic history
查看项目中所有迁移的列表(从最新到最旧),然后复制并粘贴要返回的迁移的标识符:
alembic downgrade 8ac14e223d1e
目前没有从您的版本目录中删除 迁移的命令,因此如果您想完全清除所有错误迁移的痕迹,您需要删除该版本手动文件(如 4c009570237e_add_widget_table.py
)。