Skip to content

create

Scaffold a new migration script from a template.

Database required: No

Usage

bash
# Schema migration with timestamp version
dbsh create --name CreateUsersTable --type schema --author jane

# Schema migration with sequence version (001, 002...)
dbsh create --name AddEmailColumn --type schema --sequence

# Data migration
dbsh create --name SeedRoles --type data --author jane

# Patch migration
dbsh create --name FixIndexes --type patch

# Rollback script
dbsh create --name CreateUsersTable --type rollback

# Repeatable script
dbsh create --name RefreshUserView --type repeatable

# With metadata
dbsh create --name CreateOrders --type schema --author jane --description "Orders and order_items tables"

Options

OptionShortDescription
--name-n(Required) Migration name in PascalCase
--type-tMigration type: schema (default), data, patch, rollback, repeatable
--author-aAuthor name for the metadata header
--description-dShort description for the metadata header
--output-oOverride output directory
--sequence-sUse sequence version (001, 002) instead of timestamp

Generated filenames

TypePatternExample
schema/data/patchV<version>__<Name>.sqlV20260617120000__CreateUsers.sql
schema (sequence)V<seq>__<Name>.sqlV001__CreateUsers.sql
rollbackU<version>__Rollback_<Name>.sqlU001__Rollback_CreateUsers.sql
repeatableR__<Name>.sqlR__RefreshUserView.sql

Generated file content

sql
-- Migration: CreateOrders
-- Author: jane
-- Created: 2026-06-17
-- Description: Orders and order_items tables

-- TODO: Add your SQL migration here

Released under the MIT License.