2.0 KiB
2.0 KiB
Normalización de bases de datos
Bloque 3 · Tema 1
¿Qué es la normalización?
Proceso de diseño de bases de datos relacionales para eliminar redundancias y anomalías (inserción, actualización, borrado), garantizando la integridad de los datos.
Conceptos previos
| Concepto | Definición |
|---|---|
| Clave primaria | Atributo(s) que identifican unívocamente cada fila |
| Clave candidata | Cualquier atributo (o conjunto) que podría ser clave primaria |
| Dependencia funcional | A → B: el valor de A determina el valor de B |
| Dependencia parcial | B depende solo de parte de una clave compuesta |
| Dependencia transitiva | A → B → C: C depende de A a través de B |
Formas normales
| Forma | Condición | Problema que elimina |
|---|---|---|
| 1FN | Todos los atributos son atómicos (un solo valor por celda). No hay grupos repetitivos. | Valores múltiples en una celda |
| 2FN | Cumple 1FN + todos los atributos no clave dependen de la clave completa (no de parte de ella). Solo aplica si la clave es compuesta. | Dependencias parciales |
| 3FN | Cumple 2FN + no hay dependencias transitivas: los atributos no clave no dependen de otros atributos no clave. | Dependencias transitivas |
| FNBC (Boyce-Codd) | Versión estricta de 3FN: toda dependencia funcional A → B tiene A como superclave. | Casos especiales de 3FN con múltiples claves candidatas |
| 4FN | Cumple FNBC + no hay dependencias multivaluadas independientes. | Dependencias multivaluadas |
| 5FN | Cumple 4FN + no hay dependencias de reunión que no vengan de claves candidatas. | Redundancias por descomposición |
Resumen rápido
- 1FN → sin valores múltiples en celdas
- 2FN → sin dependencias parciales (clave compuesta)
- 3FN → sin dependencias transitivas
- FNBC → toda dependencia funcional implica superclave
- En la práctica, llegar a 3FN o FNBC es suficiente para la mayoría de diseños.