Skip to main content

Alembic Workflow Guide

Migrating from an Existing Database (e.g. SQLite)​

If you already have an existing database, set up a baseline first:

alembic revision --autogenerate -m "initial migration"
alembic stamp head

Initializing an Empty Database​

Starting from scratch with a new database:

alembic init alembic
alembic revision --autogenerate -m "Initial version"
alembic upgrade head

After Updating Models​

When SQLAlchemy models change, generate a new migration and apply it:

alembic revision --autogenerate -m "Update models"
alembic upgrade head

Rollback​

Roll back one migration:

alembic downgrade -1