34 lines
1.6 KiB
Markdown
34 lines
1.6 KiB
Markdown
---
|
|
allowed-tools: Read, Write, Edit, Bash
|
|
argument-hint: [migration-name] | --create-table | --add-column | --alter-table
|
|
description: Create and manage database migrations with proper versioning and rollback support
|
|
---
|
|
|
|
# Create Database Migrations
|
|
|
|
Create and manage database migrations: **$ARGUMENTS**
|
|
|
|
## Current Database State
|
|
|
|
- ORM detection: @package.json or @requirements.txt (detect Sequelize, Prisma, Alembic, etc.)
|
|
- Migration files: !`find . -name "*migration*" -type f | head -5`
|
|
- Database config: @config/database.* or @prisma/schema.prisma
|
|
- Current schema: !`ls migrations/ 2>/dev/null | wc -l` migrations found
|
|
|
|
## Task
|
|
|
|
Create comprehensive database migrations with proper versioning and rollback capabilities:
|
|
|
|
**Migration Types**: Use $ARGUMENTS to specify table creation, column addition, table alteration, or data migration
|
|
|
|
**Migration Framework**:
|
|
1. **Migration Planning** - Analyze schema changes, dependencies, and data impact
|
|
2. **Migration Generation** - Create timestamped migration files with up/down methods
|
|
3. **Schema Updates** - Table creation, column modifications, index management
|
|
4. **Data Migrations** - Safe data transformations and backfills
|
|
5. **Rollback Strategy** - Implement reliable rollback procedures for each change
|
|
6. **Testing** - Validate migrations in development and staging environments
|
|
|
|
**Best Practices**: Follow database-specific conventions, maintain referential integrity, handle large datasets efficiently, and ensure zero-downtime deployments.
|
|
|
|
**Output**: Production-ready migration files with comprehensive rollback support, proper indexing, and data safety measures. |