La relación Préstamos no cumple con la 2FN ni la 3FN. Para cumplir la 2FN, se debe extraer la tabla Ciudad_Sucursal con los atributos nombre-sucursal y ciudad-sucursal. Para cumplir la 3FN, se debe extraer la tabla Cliente con los atributos nombre-cliente y calle-cliente. Dividiendo la relación en estas 3 tablas independientes se logra que cada una cumpla con la 1FN, 2FN y 3FN.
2. Ejercicio 1
• Considere la siguiente relación:
• VENTA_COCHES (Vendedor#,Coche#,
Fecha_Venta, Comisión, cant_descuento)
• Suponga que un coche puede ser vendido por
múltiples vendedores y por lo tanto, {Vendedor#,
Coche#} es la clave primaria. Otras dependencias
adicionales son:
• Fecha_Venta →cant_descuento y
• Vendedor#, →%Comisión.
3. Venta_Coches
Vendedor# Coche# Fecha_Venta Comisión Cant_descuento
¿Cumple la 1FN?
Todos los atributos son de cardinalidad 0 y 1. No existen grupos repetidos, por lo
tanto cumple con la 1FN
¿Cumple con la 2FN?
De acuerdo con una de las dependencias funcionales definidas:
Vendedor#, →%Comisión.
Existe dependencia parcial, en el atributo comisión ( ya que depende de un
subconjunto de la clave), por lo tanto no cumple con la 2FN
¿Qué se debe hacer?
4. Crear una segunda tabla con la columna que no cumple la 2FN
y la PK de la cual depende.
Venta_Coches
Vendedor# Coche# Fecha_Venta Cant_descuento
Vendedor
Vendedor# comisión
5. ¿La relación Venta_Coches cumple la 3FN?
Venta_Coches
Vendedor# Coche# Fecha_Venta Cant_descuento
Se tiene definida otra dependencia funcional:
Fecha_Venta →cant_descuento
Recordar que la 3FN, se refiere a dependencias transitivas, es decir un atributo no clave
depende de otro no clave
Por lo tanto esta relación no cumple con la 3FN
Debemos descomponer la relación, de tal manera que:
Venta_Coches
Vendedor# Coche# Fecha_Venta
Fechaventa_descuento
Fecha_Venta Cant_desc
7. • Ejercicio 2 Considere la siguiente definición
de relación y datos muestra:
Relación PROYECTO-HORAS
NombreDelEmple ProyectoID TareasID Teléfono HorasTotales
ado
Don 100A B-1 12345 12
Don 100A P-1 12345 12
Don 200B B-1 12345 12
Don 200B P-1 12345 12
Pam 100A C-1 67890 26
Pam 200A C-1 67890 26
Pam 200D C-1 67890 26
Horas-Proyecto (NombreDelEmpleado, ProyectoID, TareasID, Teléfono, HorasTotales) Donde
NombreDelEmpleado es el nombre de un empleado
ProyectoID es el número de un proyecto
TareasID es el nombre estándar de la tarea(s) que se realiza(n) en el proyecto
Teléfono es el número telefónico del empleado
HorasTotales son las horas que ha trabajado el empleado en este proyecto
Considerar (NombreDelEmpleado,ProyectoID,TareasID) como llave primaria
¿Está esta relación en 1FN, 2FN y 3FN?
8. Ejercicio 3
Dada la siguiente tabla:
numero-préstamo nombre-sucursal nombre-cliente ciudad-sucursal activo calle-cliente importe
P-17 Centro Santos Arganzuela 9.000.000 Mayor 1.000
P-23 Moralzarzal Gómez La Granja 2.100.000 Carretas 2.000
P-15 Navacerrada López Aluche 1.700.000 Mayor 1.500
P-14 Centro Sotoca Arganzuela 9.000.000 Arenal 1.500
P-93 Becerril Santos Aluche 400.000 Mayor 500
P-11 Collado mediano Abril Aluche 8.000.000 Preciados 900
P-29 Navas de la asunción Valdivieso Alcalá de Henares 300.000 Goya 1.200
P-16 Segovia López Cerceda 3.700.000 Mayor 1.300
P-18 Centro González Arganzuela 9.000.000 Arenal 2.000
P-25 Navacerrada Rodríguez Aluche 1.700.000 Yeserías 2.500
P-10 Galapagar Amo Arganzuela 7.100.000 Embajadores 2.200
Dependencias Funcionales
nombre-sucursal → ciudad-sucursal
nombre-sucursal → activo
nombre-cliente → calle-cliente
numero-préstamo, nombre-sucursal, nombre-cliente → importe
Llave o clave primaria(numero-préstamo, nombre-sucursal, nombre-cliente)
¿Está esta relación en 1FN, 2FN y 3FN?