Skip to content
IRC-CodingIRC-Coding
Diseño de bases de datosNormalización1NF2NF3NFBCNFAnomalíasDependencias funcionalesRelaciones

Normalización de bases de datos explicada

Normalización elimina redundancias y anomalías en bases de datos. Aprende 1NF, 2NF, 3NF, BCNF, dependencias funcionales y más.

S

schutzgeist

2 min read
Normalización de bases de datos explicada

Normalización del Diseño de Bases de Datos – 1NF, 2NF, 3NF, BCNF, Anomalías, Relaciones

Este artículo es una explicación de conceptos sobre normalización de bases de datos, incluyendo preguntas de examen y etiquetas.

In a Nutshell

La normalización elimina redundancias y anomalías en bases de datos mediante la descomposición progresiva de relaciones en formas normales bien definidas, para garantizar la integridad y consistencia de los datos.

Descripción técnica compacta

La normalización es un proceso sistemático para restructurar bases de datos relacionales, eliminando redundancias y previniendo anomalías. La Primera Forma Normal (1NF) requiere valores atómicos y claves primarias únicas. La Segunda Forma Normal (2NF) exige 1NF y elimina dependencias parciales en atributos no clave. La Tercera Forma Normal (3NF) requiere 2NF y elimina dependencias transitivas. La Forma Normal de Boyce-Codd (BCNF) es una versión más restrictiva de 3NF donde todos los determinantes deben ser candidatos de clave. Mediante la normalización se evitan anomalías de inserción, actualización y eliminación, mejorando la integridad de los datos.

Puntos clave para examen

  • 1NF: Valores atómicos, sin grupos repetitivos, claves primarias únicas
  • 2NF: Cumple 1NF, sin dependencias parciales, atributos no clave totalmente dependientes
  • 3NF: Cumple 2NF, sin dependencias transitivas
  • BCNF: Todo determinante es un candidato de clave
  • Dependencias funcionales: X → Y significa que Y es funcionalmente dependiente de X
  • Evitar anomalías: anomalías de inserción, actualización, eliminación
  • Relevante para IHK: Poder reconocer y aplicar formas normales
  • Práctica: Reducir redundancias, optimizar rendimiento, asegurar consistencia

Componentes clave

  1. Valores atómicos y 1NF
  2. Dependencias funcionales
  3. Claves primarias y candidatos de clave
  4. Dependencias parciales y 2NF
  5. Dependencias transitivas y 3NF
  6. Determinantes y BCNF
  7. Anomalías (inserción, actualización, eliminación)
  8. Redundancias y sus consecuencias
  9. Relaciones y claves foráneas
  10. Desnormalización como contraparte

Ejemplo práctico

// Antes de normalización (problema con redundancias)
Pedido(NumeroPedido, NumeroCliente, NombreCliente, NumeroArticulo, NombreArticulo, Cantidad)

// Después de normalización a 3NF
Cliente(NumeroCliente, NombreCliente)
Articulo(NumeroArticulo, NombreArticulo)
Pedido(NumeroPedido, NumeroCliente, Fecha)
LineaPedido(NumeroPedido, NumeroArticulo, Cantidad)

Explicación: Redundancias eliminadas, cada dato almacenado una sola vez, anomalías evitadas.

Ventajas y desventajas

Ventajas

  • Reduce redundancias y necesidad de almacenamiento
  • Evita anomalías en la manipulación de datos
  • Mejora la integridad y consistencia de los datos
  • Permite cambios en la estructura de datos más flexibles

Desventajas

  • Complejidad aumentada por múltiples tablas
  • Pérdida de rendimiento por Joins
  • Mayor esfuerzo de implementación
  • Posible necesidad de desnormalización para optimizar rendimiento

Preguntas típicas de examen (con respuesta breve)

  1. ¿Qué requiere 1NF? Valores atómicos, sin grupos repetitivos, claves primarias únicas.

  2. ¿Cómo se diferencia 2NF de 1NF? 2NF requiere 1NF y elimina dependencias parciales en atributos no clave.

  3. ¿Qué es una dependencia transitiva en 3NF? El atributo A depende de B, B depende de C, pero A no depende directamente de C.

  4. ¿Es BCNF más restrictiva que 3NF? Sí, BCNF requiere que todo determinante sea un candidato de clave, una condición más estricta que 3NF.

  5. ¿Cómo evitar anomalías de inserción? Mediante normalización se pueden insertar nuevos datos sin duplicar datos existentes.

  6. ¿Qué significa la dependencia funcional X → Y? Para cada valor de X existe exactamente un valor correspondiente de Y.

  7. ¿Qué es una anomalía de actualización y un ejemplo? Cambiar el nombre de un cliente requiere actualizar todas sus pedidos, riesgo de inconsistencia.

  8. ¿Cuándo es útil la desnormalización? Ante problemas de rendimiento causados por Joins complejos, aceptando intencionalmente redundancias.

Fuentes más importantes

  1. https://es.wikipedia.org/wiki/Normalizaci%C3%B3n_(bases_de_datos)
  2. https://docs.microsoft.com/es-es/sql/relational-databases/normalization
  3. https://www.guru99.com/database-normalization.html

Literatura recomendada: Bases de datos

Keine Bücher für Kategorie "datenbanken" gefunden.

Volver al blog
Share:

Entradas relacionadas