Skip to content

Your First Migration

Create your first migration from SQLAlchemy models.

What you'll learn

  • how to generate a versioned migration file
  • how to review upgrade/rollback sections
  • when to create manual migrations

Prerequisites

  • configuration loads successfully (dbwarden settings show --all)
  • target database has model paths configured
  • model metadata reflects intended change

Generate migration

dbwarden make-migrations "create users table" --database primary

Typical output file:

migrations/primary/primary__0001_create_users_table.sql

Review the file

Every migration must include both sections:

-- upgrade

-- rollback

Manual migration option

When change is not model-driven:

dbwarden new "manual hotfix" --database primary

Validate migration quality

dbwarden migrate --database primary
dbwarden rollback --database primary --count 1
dbwarden migrate --database primary