Buenas Prácticas de Diseño de Esquemas
Deja que la base de datos aplique las invariantes de las que depende tu negocio.
Cómo Usar Esta Lista
- Revisa los diagramas ER contra la lista de verificación de restricciones.
- Bloquea migraciones que falten FK o CHECK cuando sean requeridas.
A - Integridad
- Declara relaciones FOREIGN KEY. Documenta ON DELETE.
- Indexa las columnas de clave externa. Rendimiento de uniones y cascadas.
- Usa CHECK para reglas de filas. No solo validación de la aplicación.
B - Claves
- Elige claves sustitutas o naturales deliberadamente. Documenta en ADR.
- Evita PKs compuestas en tablas amplias y activas. A menos que sean datos de referencia.
- Usa IDENTITY para nuevas columnas de id. Prefiere sobre serial.
C - Evolución
- DDL en migraciones versionadas. Sin hotfix manual en producción.
- Prueba la ruta de reversión o corrección hacia adelante. El DDL puede no revertir todos los objetos.
- Comenta columnas no obvias. El catálogo es la documentación de incorporación.
Preguntas Frecuentes
¿Son lentas las restricciones?
Pequeño coste de verificación; gran ganancia de integridad.
Relacionado
- Claves Primarias y Externas - Patrones de FK
- Conceptos Básicos de Migraciones - envío de DDL
Versiones de la pila: Esta página fue escrita para PostgreSQL 18.4 (estable 18, mantenimiento 17), pgvector 0.8+, PgBouncer 1.x, Patroni 3.x, y PostGIS 3.5+.