Está en la página 1de 19

NORMALIZACIÓN

Curso: Base de Datos

Ing. Bruno JuárezV.


C16175@utp.edu.pe

1
Normalización
• Proceso de conversión (descomposición) de una
relación en una forma estándar, con el fin de eliminar la
Redundancia de datos (repetición de datos) y
asegurar la Integridad de los datos (datos
consistentes).
• Proceso de simplificar una relación de campos
(elementos dato) de un registro.
• Desarrollado por Dr. E.F. Codd (conceptos y técnicas)
• Se establecieron 3 tipos de relaciones normalizadas:
1FN, 2FN y 3FN
Ejemplo
• Los siguientes son los datos de una factura:
• Número factura
• Fecha Factura
• Código Cliente
• Nombre Cliente
• Código Vendedor
• Nombre Vendedor
• Código Item
• Nombre Item
• Cantidad
• Precio
• Precio Venta
Primera Forma Normal (1FN)
• Dividir la relación en una o más relaciones sin grupos repetitivos.
• Asignar una PK al grupo no repetitivo.
• Pasar la PK del grupo no repetitivo a los grupos repetitivos
• Buscar la PK de los grupos repetitivos.

• Para un único Número factura, Fecha factura, Código cliente,


Nombre Cliente, Código vendedor, Nombre vendedor, se repiten
los demás datos.
• Por lo tanto existe un grupo repetitivo compuesto por: Código Item,
Nombre Item, Cantidad, Precio, Precio Venta
Primera Forma Normal (1FN)
FACTURA_CAB FACTURA_DET
Número Factura PK Número Factura PK
Fecha Factura Código Item PK
Código Cliente Nombre Item
Nombre Cliente Cantidad
Código Vendedor Precio Venta
Nombre Vendedor Precio
Segunda Forma Normal (2FN)
• Aplicable a relaciones que tengan claves compuestas (más de un
dominio)
• Verificar que cada dato no clave depende funcionalmente de toda
la clave, y no solamente de una parte.
• Dividir en relaciones para solucionar este problema.
• Dependencia funcional: Referida a que un atributo de una fila
determina o puede dar a conocer el valor de otro atributo en la
misma fila.
A  B : A determina funcionalmente a B
Código Cliente  Nombre Cliente
Segunda Forma Normal (2FN)
FACTURA_DET FACTURA_DET
Número Factura PK Número Factura PK
Código Item PK Código Item PK
Nombre Item Cantidad
Cantidad Precio venta
Precio Venta ARTÍCULOS
Precio Código Item PK
Nombre Item
Precio
Tercera Forma Normal (3FN)

• Verificar que todos los datos no clave sean mutuamente


independientes entre sí.
• Eliminar los datos o dominios redundantes.
• Dividir las relaciones para solucionar cualquier
problema
Tercera Forma Normal (3FN)
FACTURA_CAB FACTURA_CAB
Número Factura PK Número Factura PK
Fecha Factura Fecha Factura
Código Cliente Código Cliente
Nombre Cliente Código Vendedor
Código Vendedor CLIENTE
Nombre Vendedor Código Cliente PK
Nombre Cliente
VENDEDOR
Código Vendedor PK
Nombre Vendedor
Tercera Forma Normal (3FN)

FACTURA_DET FACTURA_DET
Número Factura PK Número Factura PK
Código Item Código Item PK
Cantidad Cantidad
Precio Venta

Se elimina Precio Venta por ser un valor calculable


Normalización
FACTURA_CAB

FACTURA_DET

FACTURA CLIENTE

VENDEDOR

ARTÍCULOS
Normalización

• 1FN: Sin Grupos Repetitivos


• 2FN: Todos los dominios no clave con dependencia
funcional de la clave
• 3FN: Todos los dominios no clave con dependencia
funcional completa de la clave principal e
independientes unos de otros
Modelo E-R
CLIENTE

M
1 M
FACTURA_CAB FACTURA_DET

M M

1 1

VENDEDOR ARTÍCULOS
Normalización

• Se debe normalizar cada entidad del modelo.


• Al normalizar una entidad se puede obtener otra
entidad que ya existe. En este caso se unen ambas
relaciones.
• Realizar un modelo (E-R, relacional y/o diagrama de
estructuras) al finalizar la normalización.
• Los campos calculables se pueden eliminar o no.
Tener en cuenta
En la 3FN, se deben sacar a entidades independientes todos
aquellos atributos que puedan generar inconsistencia de
datos y reemplazarlos por un código.

Boleta Boleta Cliente


Número Número Cod_Cli
Fecha Fecha Nombre
Nombre Cliente Cod_Cli
Problema
 Tenemos la entidad Facultad con tres atributos: Nombre
Docente, Comisión, Curso
 Tenemos al Docente Juan Pérez, quien pertenece a las
comisiones de Cultura y Jornada y tiene asignados 3
cursos 7110123, 7108100, 7108102
 ¿Qué se puede hacer?
Problema
Nombre Comisión Curso
Juan Pérez Cultura 7110123
Juan Pérez Jornada 7108100
Juan Pérez ??????? 7108102
 Es correcto?
 No existe relación directa entre Comisión y Curso 
Son independientes
 ¿Qué se puede hacer?
Dependencia Multivaluada
 Para hacer cumplir la independencia de los atributos se
requiere duplicar valores
 Esto es la dependencia multievaluada.
Nombre Comisión Curso
Juan Pérez Cultura 7110123
Juan Pérez Jornada 7110123
Juan Pérez Cultura 7108100
Juan Pérez Jornada 7108100
Juan Pérez Cultura 7108102
Juan Pérez Jornada 7108102
Cuarta Forma Normal
 Una entidad está en 4FN, si está en 3FN y no tiene atributos
multievaluados.
 Para solucionar esto se separan los atributos multievaluados en
entidades independientes junto a su clave.
Fac_Comisión Fac_Curso
Juan Pérez Cultura Juan Pérez 7110123
Juan Pérez Jornada Juan Pérez 7108100
Juan Pérez 7108102

También podría gustarte