2. Normalización
• Definición:
La normalización es un proceso en el cual
se va comprobando el cumplimiento de
una serie de reglas, que sirven para
ayudar eliminar redundancias e
inconsistencias en una base de datos.
2
6. Normalización
• Formas Normales:
Una tabla está en Primera Forma Normal
(1FN) si sus atributos contienen valores
atómicos.
“Una relación en la que la intersección de toda fila
y columna contiene un valor y solo un valor”
6
10. Normalización
• Ejercicio: Aplique la primera forma
normal a la siguiente tabla:
1. Persona (#CURP, nombre, edad, fecha de
nacimiento, teléfonos)
2. Cliente
(#Num_cliente,direcciones_de_envio,
saldo, límite de crédito)
10
11. Dependencia funcional de datos
Es decir, cuando dos o más filas tienen el mismo
valor de A, tienen también el mismo valor de B.
Dependencias funcionales
11
A B
Dependencia funcional de datos
Describe una relación entre atributos de una
tabla.
“Si A y B son atributos de una tabla, B será
funcionalmente dependiente de A. Si cada valor
de A está asociado con exactamente un valor
de B”
determinante dependiente
11
B depende funcionalmente de A
12. Dependencia funcional de datos
Ejemplo:
Dependencias funcionales
12
12
No.
Trabajador
Nombre
Tipo de
empleado
Salario Sucursal
SL21 Juan Director 24000 B005
SG37 Ana Asistente 9000 B003
SG14 David Supervisor 18000 B003
SA9 María Asistente 9000 B007
SG5 Susana Director 24000 B003
SL41 Julia Asistente 9000 B005
TRABAJADORES
13. Dependencia funcional completa
Indica que si A y B son atributos de una
tabla, B depende funcionalmente de A
pero no de ningún subconjunto de A.
Dependencias funcionales
13
13
14. Dependencia funcional completa
Ejemplo 1
Dependencias funcionales
14
14
Matrícula
Código
curso
Nombre Apellido Calificación
1256 34 Pedro Valiente 9
1256 25 Pedro Valiente 8
5776 34 Ana Fernández 6
3491 25 Sara González 7
3491 34 Sara González 6
15. Dependencia funcional transitiva
Se produce cuando tenemos tres conjuntos de
atributos X, Y y Z.
Y depende funcionalmente de X (X→Y),
Z depende funcionalmente de Y (Y→Z).
Además X no depende funcionalmente de Y.
Entonces ocurre que X produce una dependencia
funcional transitiva sobre Z.
Esto se denota como:
(X → Z)
Dependencias funcionales
17. Normalización
Segunda Forma Normal (2FN)
Ocurre si una tabla está en primera forma
normal y además cada atributo que no sea
clave, depende de forma funcional
completa respecto de cualquiera de las
claves.
17
18. Normalización
Segunda Forma Normal (2FN)
Ejemplo:
18
Matrícula
Código
curso
Nombre Apellido Calificación
1256 34 Pedro Valiente 9
1256 25 Pedro Valiente 8
5776 34 Ana Fernández 6
3491 25 Sara González 7
3491 34 Sara González 6
19. Normalización
Segunda Forma Normal (2FN)
Solución:
19
Matrícula Nombre Apellido
1256 Pedro Valiente
5776 Ana Fernández
3491 Sara González
Matrícula
Código
curso
Calificación
1256 34 9
1256 25 8
5776 34 6
3491 25 7
3491 34 6
20. Normalización
Segunda Forma Normal (2FN)
Ejercicio:
20
No.
vendedor
Nombre
vendedor
Numero
cliente
Nombre
Cliente
Valor de venta
1022 Mariana 1840 Melisa 13540
1022 Mariana 1834 Álvaro 10600
1022 Mariana 1856 Victoria 9700
2893 Salvador 1865 Francisco 68400
2893 Salvador 1890 Enrique 34600
2785 Adrian 1890 Enrique 25000
2785 Adrian 1823 Alma 35008
22. Normalización
Tercera Forma Normal (3FN)
Ocurre cuando una tabla está en 2FN y
además ningún atributo que no sea clave
depende transitivamente de las claves de
la tabla. Es decir no ocurre cuando algún
atributo depende funcionalmente de
atributos que no son clave.
22
23. Normalización
Tercera Forma Normal (3FN)
23
DNI Nombre Apellido Cod. Provincia Provincia
12121349A Salvador Velasco 34 Palencia
12121349B Pedro Valiente 34 Palencia
3457775G Ana Fernández 47 Valladolid
5674378J Sara Crespo 47 Valladolid
3456858S Marina Serrat 08 Barcelona
Alumnos
24. Normalización
Tercera Forma Normal (3FN)
Solución:
Alumnos(#DNI, Nombre, Apellido1, Cod_Provincia)
Provincia(#Cod_Provincia, Provincia)
24
25. Normalización
Tercera Forma Normal (3FN)
Solución:
25
DNI Ciudad País Edad
1 Oaxaca México 34
2 Oaxaca México 25
3 Puebla México 19
4 Miami EU 22
5 Miami EU 30
SOCIO
El campo no principal País depende transitivamente de la clave DNI
(a través del campo Ciudad).
29. Normalización
Forma normal de Boyce-Codd (FNBC)
Una relación está en Formal Normal de
Boyce-Codd (BCNF) si y sólo si cada
determinante (en la relación) es una
clave candidata.
29
30. Normalización
Una forma sencilla de comprobar si una relación
se encuentra en FNBC consiste en comprobar,
además de que esté en 3FN, lo siguiente:
1. Si no existen claves candidatas compuestas
(con varios atributos), está en FNBC.
2. Si existen varias claves candidatas
compuestas y éstas tienen un elemento
común, no está en FNBC.
30
31. Normalización
Forma normal de Boyce-Codd (FNBC)
Ejemplo:
31
DNI Asignatura Tutor
1 Lenguaje Eva
1 Matemáticas Andrés
3 Lenguaje Eva
2 Matemáticas Guillermo
2 Lenguaje Julia
4 Matemáticas Guillermo
TUTORIAS
32. Normalización
Forma normal de Boyce-Codd (FNBC)
Solución:
Tutorías(#DNI,#Tutor)
AsignaturasTutor(#Tutor, Asignatura)
32
33. Normalización
Dependencia multivaluada
Una dependencia multivaluada
representa una dependencia entre
atributos( por ejemplo A, B y C) en una
relación de modo que para cada valor de
A hay un conjunto de valores de B y un
conjunto de valores de C; sin embargo,
los conjuntos de valores de B y C son
independientes entre si. 33
36. Normalización
Dependencia multivaluada
36
No Curso Profesor Material
17 Eva 1
17 Eva 2
17 Julia 1
17 Julia 2
25 Eva 1
25 Eva 2
25 Eva 3
Los materiales del curso dependen del curso y no del profesor en una
dependencia multivaluada (no hay dependencia funcional ya que los
posibles valores son varios). Para el par Nº de curso y profesor podemos
saber los materiales; pero lo sabemos por el curso y no por el profesor.
38. Normalización
Cuarta Forma Normal(4FN)
Una relación que ésta en forma normal
de Boyce-Codd y no contiene
dependencias multivaluadas no triviales.
Una dependencia multivaluada A->>B o A->->B
es trivial si B es un subconjunto de A o si A U
B =R
38
41. Normalización
Cuarta Forma Normal(4FN)
Ejemplo 2:
41
Transporte
Conductor Tipo Vehículo Tipo Carga
Juan Camioneta Perecederos
Marcos Camioneta Perecederos
Juan Camioneta Muebles
Marcos Camioneta Muebles
Juan Camión Mudanza
Marcos Camión Mudanza
En este caso hay dependencias funcionales multivaluadas, ya que algunos atributos
que forman la clave dependen de otro atributo que también la forman.
42. Normalización
Cuarta Forma Normal(4FN)
Ejemplo 2:
42
Tabla en cuarta forma normal
Tipo Vehículo Tipo Carga
Camioneta Perecederos
Camioneta Muebles
Camión Mudanza
Tabla en cuarta forma normal
Conductor Tipo Vehículo
Juan Camioneta
Marcos Camioneta
Juan Camión
Marcos Camión
45. Normalización
Quinta Forma Normal(5FN)
Ocurre cuando está en 4FN y además no
hay proyecciones que combinadas formen
la tabla original. Es la más compleja y
polémica de todas. Polémica pues no está
claro en muchas ocasiones que sea una
solución mejor sacar las proyecciones de la
tabla. Fue definida también Fagin.
45