py-alembic-patterns
Escribe migraciones seguras de Alembic para PostgreSQL
Las migraciones de base de datos pueden causar pérdida de datos o tiempo de inactividad cuando se hacen incorrectamente. Esta habilidad proporciona patrones probados para crear, revisar y aplicar de forma segura las migraciones de Alembic.
下載技能 ZIP
在 Claude 中上傳
前往 設定 → 功能 → 技能 → 上傳技能
開啟並開始使用
測試它
正在使用「py-alembic-patterns」。 Crear una migración para renombrar la columna name a full_name en la tabla users
預期結果:
- ADVERTENCIA: El autogenerar creará drop+add que pierde datos
- ENFOQUE CORRECTO: Usar op.alter_column con parámetro new_column_name
- Ejemplo: op.alter_column('users', 'name', new_column_name='full_name')
- Siempre implementar downgrade correspondiente para revertir el renombrado
正在使用「py-alembic-patterns」。 Agregar una columna role requerida a la tabla users que ya tiene datos
預期結果:
- Proceso de tres pasos para columnas no anulables en tablas existentes:
- Paso 1: Agregar columna como anulable
- Paso 2: Backfill filas existentes con valor por defecto
- Paso 3: Alterar columna para agregar restricción NOT NULL
- Esto previene fallos en tablas con datos existentes
安全審計
安全This is a pure documentation skill containing only markdown content with educational code examples. All 39 static findings are false positives caused by pattern matching on example code in markdown blocks and metadata fields. No executable code, scripts, network operations, or file system access exists in this skill.
風險因素
🌐 網路存取 (1)
⚙️ 外部命令 (24)
品質評分
你能建構什麼
Escribir migraciones seguras para producción
Crea migraciones con rutas de downgrade proper que manejen los datos correctamente y eviten bloqueos de tablas en entornos de producción.
Revisar migraciones antes del despliegue
Verifica que las migraciones sigan patrones de seguridad y no causen tiempo de inactividad o pérdida de datos durante despliegues en producción.
Auditar prácticas de migración del equipo
Asegurar que los equipos de desarrollo sigan las mejores prácticas de PostgreSQL para nomenclatura, creación de índices y gestión de restricciones.
試試這些提示
Ayúdame a crear una migración de Alembic para agregar una tabla user_preferences con columnas id, user_id y theme. Incluye funciones proper de upgrade y downgrade.
Revisa esta migración de Alembic autogenerada en busca de patrones peligrosos. Verifica riesgos de pérdida de datos y lógica de downgrade faltante: [pegar migración]
Necesito agregar un índice en la tabla events que tiene 50 millones de filas. Muéstrame cómo hacer esto sin bloquear la tabla en producción.
Estoy agregando una columna de estado que debe ser backfilled basándose en otras columnas. Muéstrame cómo implementar esto como una migración de datos con procesamiento por lotes.
最佳實務
- Siempre implementar funciones de downgrade que reviertan completamente la operación de upgrade
- Revisar cada migración autogenerada en busca de patrones drop+add que causen pérdida de datos
- Usar CONCURRENTLY para creación de índices en tablas grandes para prevenir bloqueos en producción
避免
- Confiar en migraciones autogeneradas sin revisión manual para renombrado de columnas
- Agregar columnas NOT NULL sin hacer backfill de filas existentes primero
- Dejar funciones de downgrade vacías con solo pass, haciendo imposible el rollback