技能 db-migration
🗄️

db-migration

安全 ⚡ 包含脚本

Gestionar migraciones de base de datos con Alembic

Las migraciones de bases de datos son complejas y propensas a errores. Esta habilidad proporciona orientación experta para migraciones Alembic en proyectos SQLModel y FastAPI con capacidades seguras de evolución de esquema y reversión.

支持: Claude Codex Code(CC)
📊 71 充足
1

下载技能 ZIP

2

在 Claude 中上传

前往 设置 → 功能 → 技能 → 上传技能

3

开启并开始使用

测试它

正在使用“db-migration”。 Generate a migration for adding a fees table with student_id, amount, status, and due_date columns

预期结果:

  • Archivo de migración generado con creación de tabla y restricción de clave foránea
  • Índices agregados en las columnas student_id y status
  • Función downgrade creada para eliminar la tabla de forma segura
  • Migración lista para revisar antes de aplicar

正在使用“db-migration”。 How do I handle enum type changes safely

预期结果:

  • Crear nuevo tipo enum antes de alterar la columna
  • Usar cláusula USING para conversión de tipos
  • Incluir ruta de downgrade para revertir valores enum
  • Probar el ciclo completo de upgrade y downgrade

安全审计

安全
v5 • 1/16/2026

Pure documentation skill with no executable code. The SKILL.md contains only documentation and code examples. The verify.py script only reads and validates YAML frontmatter locally. All 86 static findings are false positives from misidentified patterns: regex was flagged as crypto, markdown backticks as shell execution, and database terms like 'upgrade' as C2 keywords.

3
已扫描文件
616
分析行数
1
发现项
5
审计总数

风险因素

⚡ 包含脚本 (1)
审计者: claude 查看审计历史 →

质量评分

45
架构
100
可维护性
85
内容
21
社区
100
安全
91
规范符合性

你能构建什么

Configurar migraciones

Inicializar y gestionar migraciones Alembic para aplicaciones FastAPI en producción

Gestionar migraciones de datos

Crear migraciones de datos complejas con actualizaciones por lotes y cambios de tipos enum

Mantener seguridad de reversión

Mantener capacidades seguras de reversión para la evolución del esquema de base de datos

试试这些提示

Inicializar Alembic
Initialize Alembic migrations in my SQLModel project
Generar migración
Generate a migration for my new User table with email and created_at fields
Aplicar migraciones
Apply all pending migrations and show the current revision
Revertir de forma segura
Rollback the last migration and show the downgrade steps

最佳实践

  • Siempre generar migraciones con --autogenerate antes de editar manualmente
  • Probar el ciclo completo de upgrade y downgrade en un entorno que no sea de producción
  • Asegurar que las operaciones downgrade eliminen índices antes de tablas y usen cláusulas IF EXISTS

避免

  • No omitir el paso de autogenerate y escribir migraciones completamente a mano
  • No olvidar incluir lógica de reversión en la función downgrade
  • No ejecutar migraciones directamente en producción sin probar primero la ruta de downgrade

常见问题

¿Funciona esta habilidad con SQLAlchemy puro?
Sí. Los ejemplos usan SQLModel pero los comandos y patrones de Alembic funcionan con cualquier proyecto basado en SQLAlchemy.
¿Qué bases de datos están soportadas?
Alembic soporta PostgreSQL, MySQL, SQLite y otras bases de datos compatibles con SQLAlchemy. La habilidad cubre patrones aplicables a todas.
¿Cómo gestiono migraciones de tablas grandes?
Usar actualizaciones por lotes con cláusulas LIMIT en tu función upgrade para evitar bloquear tablas grandes durante migraciones de datos.
¿Están seguros mis datos durante las migraciones?
La habilidad proporciona mejores prácticas para la seguridad de datos incluyendo pruebas de migraciones, uso de transacciones y siempre proporcionar rutas de downgrade.
¿Por qué mi migración autogenerada está vacía?
Asegurar que tus clases SQLModel estén importadas en env.py para que Alembic pueda detectar los cambios en tu target_metadata.
¿En qué se diferencia esto de SQL puro?
Alembic proporciona control de versiones para cambios de esquema con migraciones reversibles. SQL puro carece de esta seguridad y capacidad de seguimiento.