Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Unidad 3
Contenido
Normalizacin
Anlisis de Dependencias funcionales entre los datos: funcional,
transitiva, completa y multivalor
Normalizacin: Primera, Segunda y Tercera Forma Normal.
Forma Normal de Boyce & Codd, Cuarta y Quinta Forma Normal
Paso del modelo E-R al modelo Relacional
El Proceso de Normalizacin
Qu es? Para que sirve?
CProfesor NProfesor
Donde PK=(x,y)
EJEMPLO 1 - DEPENDENCIA FUNCIONAL
COMPLETA
RELACIN EVALUACIN
C Estudiante C Curso Q Nota
200810025 S03 16.00
200810025 S114 15.25
200525036 SI03 14.00
C Estudiante
Q Nota
C Curso
Q Horas
CConsultor CProyecto DConsultor DProyecto trabajadas
C1 P1 Juan Auditoria 25
C1 P2 Juan DW 80
C2 P1 Pedro Auditoria 35
C3 P3 Mara CRM 20
C3 P4 Mara ERP 50
CConsultor
Q Horas_Trabajadas
CProyecto
DProyecto-
CEmpleado DEmpleado MSalario CProyecto
Trmino
E1 Juan 3,500 P1 31/10/02
E2 Pedro 3,000 P1 31/10/02
E3 Mara 3,800 P2 15/11/02
E4 Andrs 3,000 P2 15/11/02
E5 Ana 2,800 P1 31/10/02
C-Empleado CProyecto,
DProyecto-Trmino
Video que explica la normalizacin a travs las tres formas normales que
existen entre los atributos
Chris Date, "What First Normal Form Really Means", pp. 127-8
Primera Forma Normal (1FN)
Relacin: Pedido
CCliente NCliente NCiudad $Flete $Precio CProducto Qpedida DPedido
Unitario
C1 JUAN LIMA 0.75 8.20 I3 1 5/6/03
Cliente:
(C-Cliente, N-Cliente, N Ciudad, $Flete)
Pedido 1:
(C-Cliente, C-Producto, D Pedido, Q Pedida)
Segunda Normal (2FN)
Cul es el
problema?
Por qu habra que
modificar este
esquema?
Fallas de 2FN
Los defectos de almacenamiento de una relacin 2FN
son causados por la dependencia transitiva (DT) de
atributos no-clave con la clave primaria.
Se puede normalizar como sigue:
Examinar cada atributo no-clave para ver si est en
DF con otro atributo diferente de la PK.
Crear una nueva relacin para almacenar la no-
clave transitivamente dependiente.
Ejemplo de Falla de 2FN
Cliente:
(C-Cliente, N-Cliente, N Ciudad, $ Flete)
Tercera Forma Normal (3FN)
Una relacin est en tercera forma normal o (3FN) si es 2FN y ningn atributo
no-clave en la relacin esta en DF con algn otro atributo no-clave.
Producto:
(C-Producto, $ Precio Unitario)
Cliente 1: Ciudad:
(C-Cliente, N-Cliente, N Ciudad) (N Ciudad, $ Flete)
Pedido 1:
(C-Cliente, C-Producto, D Pedido, Q Pedida)
Forma Normal Boyce/Codd
Clave Candidata:
Es un atributo o conjunto de atributos que pueden
representar de forma nica a cada registro de una
entidad o relacin.
Cuando en una relacin hay ms de una clave
candidata, una se designa como clave primaria.
Forma Normal Boyce/Codd
Estudiante Curso NAsesor
Gmez Mate I Arias
Gmez Fsica Flores
ASESORIA
Prez Mate I Arias
Prez lgebra Snchez
Ramos Fsica Flores
Ramos Mate I Garca
Restricciones:
Para cada curso (C), cada estudiante(E), tiene un solo
asesor (A)
Cada curso tiene varios asesores (A), pero cada
profesor asesora en un solo curso
Forma Normal Boyce/Codd
Para cada curso, cada estudiante tiene un solo
asesor
(E, C) A
Cada profesor asesora en un solo curso (pero cada
curso tiene varios asesores)
(E, A) C
Forma Normal Boyce/Codd
Existen dos clave candidatas que se traslapan o
estn sobrepuestas (E,C) y (E,A).
A C
Forma Normal Boyce/Codd
Anomalas de eliminacin
(Identifique alguna)
PROYECTO_EMPLEADO EMPLEADO_TAREA
Proyecto Empleado Empleado Tarea
P01 Juana Paz Juana Paz anlisis
P01 Mario Gmez Mario Gmez calidad
P15 Ana Llanos Ana Llanos Diseo
P20 Juana Paz Ramn Daz anlisis
P30 Ramn Daz
Forma Normal Boyce/Codd
EXAMEN
REGLAS:
No hay empates; es decir, dos estudiantes no pueden ocupar la misma
posicin en la misma materia.
Forma Normal Boyce/Codd
Esta relacin tiene dos claves candidatas
sobrepuestas, de acuerdo con las reglas dadas:
(Estudiante, Materia) y (Materia, Posicin),
Rx R.y
Dependencia Multivalor
Curso Profesor Texto
Deporte
(C_Alumno, N_Deporte)
4 FN - Ejemplo
Deporte
(C_Alumno, N_Deporte)
4 FN - Ejemplo
Actividades
NACIMIENTOS
NACIMIENTOS
Normalizando:
R1 = (bebe, madre)
R2 = (bebe, enfermera, mdico)
No hay DT, y est en FNBC pero en R2 tenemos las dependencias
multivaloradas:
bebe mdico
bebe enfermera
Cuarta Forma Normal - Ejemplo
NACIMIENTOS
Procedimientos alternativos:
#Crear una nueva relacin para cada atributo DMV.
R3 = (bebe, mdico) R4 = (bebe, enfermera)
Bebe Mdico Bebe Enfermera
Bebe 1 Zapata Bebe 1 Silva
Bebe 1 Fuentes Bebe 1 Gmez
Bebe 1 Garca
Cuarta Forma Normal - Ejemplo
NACIMIENTOS
A B C D F E
Dependencias
B A D C E F
Regla para
agregar otro AoB C C E (E, F) G
atributo
Proceso Total de Normalizacin
(Diagrama de Dependencias)
A
B
C A
E D
F
G
H R3: (A, D)
I
R2: (A, B, C, E, F, G, H, I)
Proceso Total de Normalizacin
(Diagrama de Dependencias)
PASO 3. Separar no-claves que no son totalmente dependientes de la
clave principal:
D
B A
R3: (A, D) E I
F C
G
A R6: (A, I, C)
B R5: (B, E, F, G)
H
R4: (A, B, H)
Proceso Total de Normalizacin
(Diagrama de Dependencias)
A
B
D E
F A
R3: (A, D) R7: (B, E, F) I
C
A R6: (A, I, C)
B F
H G
R4: (A, B, H) R8: (F, G)
Proceso con Diagrama de Dependencias
CLIENTE
C Cliente
N Cliente PK:
N Tipo_documento
# documento (Conjunto mnimo de
N Direccin_envo atributos
$ Linea_Credito determinantes +
C Tipo_cliente Atributos en DMV) =
N Tipo_cliente (C Cliente,
C Clasificacin Ndireccin_envo,
N Tipo_Credito NTipo_Credito)
$ Tipo_credito
Proceso con Diagrama de Dependencias
C TipoCuenta
Slo supertipo
Las entidades subtipo son combinadas con el supertipo e
implementadas como una sola tabla
Las relaciones exclusivas de los subtipos se convierten en
opcionales para la nueva tabla
Se incluirn campos que debern aceptar valores nulos
dependiendo de lo que se establezca en el cdigo de la
aplicacin.
La codificacin de las consultas se hace ms compleja.
Implementacin de Entidades
Supertipo / Subtipo
Slo subtipos
Eliminar el supertipo e implementar solamente los
subtipos
Si los subtipos no son excluyentes, ser necesario duplicar
alguna informacin.
Adecuado con subtipos excluyentes, que comparten muy
poco comportamiento.