Beruflich Dokumente
Kultur Dokumente
3.1 Ejemplo
Facturas
codfac fecha iva dto codcli nombre poblacin
Lineas
codfac codart cant dto precio descrip precio almacen
Evita anomalas de datos en inserciones, borrados y modicaciones. Mejora la independencia de los datos.
Tema 8: Diseo lgico de bases de datos relacionales (IG18) 40 Tema 8: Diseo lgico de bases de datos relacionales (IG18) 42
3.1 Ejemplo
Se desea almacenar informacin sobre las facturas que realizan los clientes de una empresa as como los articulos que compran. Para ello se ha realizado el siguiente diseo:
3.1 Ejemplo
Escribe en las dos tablas los siguientes datos:
1. La factura 3125 es del 23/09/2003, con un 16 % de IVA y del cliente 355 cuyo nombre es Juan Diaz de Castelln. Se vendieron 3 tuercas de doble paso (cod. 345T) por un precio de 2.25 Euros y 2 tornillos de rosca reforzada (cod. T554) por 1 Euro. 2. La factura 3126 es del 12/12/2003, con un 16 % de IVA y del cliente 354 cuyo nombre es Rosa Fernndez de Almazora. Se vendieron 3 tornillos de rosca reforzada (cod. T554) por 1.2 Euros. 3. La factura 3127 es del 15/12/2003, con un 16 % de IVA y del cliente 355 cuyo nombre es Juan Diaz de Castelln. Se vendieron 2 tornillos de rosca reforzada (cod. T554) por 1.1 Euros. 4. Se ha comprado un nuevo artculo en el almacen con cdigo 445A, arandelas cuadradas con un precio de 0.87 Euros. 5. 6. 7. 8. El cliente 355 devuelve las tres tuercas y solicita que se rectique la factura 3125. El cliente 355 ha cambiado su domicilio a Villareal. El cliente 354 realiza la devolucin de la factura 3126. Se ha hecho un nuevo cliente, Ferran Sabater de Castelln con cdigo 337.
FACTURAS(codfac,fecha, iva, dto, codcli, nombre, poblacin) LINEAS(codfac,codart,cant, dto, precio, descrip, precio_almacen) codfac ------------> Nulos FACTURAS No Borrado P Modif. P
LINEAS
3.1 Ejemplo
Existen dependencias entre los datos, no slo de la clave primaria !!! Indica cuales sn esas dependencias:
LINEAS
codfac ------------>
Nulos FACTURAS No
Borrado P
Modif. P
3.1 Ejemplo
CLIENTES(codcli, nombre, poblacin) FACTURAS(codfac,fecha, iva, dto, codcli) codcli Nulos FACTURAS ----------> CLIENTES S ARTICULOS(codart, descrip, precio_almacen) LINEAS(codfac,codart,cant, dto, precio) codfac Nulos LINEAS ------------> FACTURAS No codart Nulos LINEAS ------------> ARTICULOS No
Tema 8: Diseo lgico de bases de datos relacionales (IG18) 45
Cada dependencia funcional es una clase especial de regla de integridad. Borrado Modif. P P Borrado Modif. R P Cada dependencia funcional representa una relacin de uno a muchos.
No est en 2FN!
Se extrae la tabla anidada aadiendole la clave primaria de la tabla principal. La clave primaria de la nueva tabla ser la unin de la que tena ms la de la tabla principal.
PRODUCTO (codprod, nombre, descripcin)
Se extraen los atributos dependientes en otra tabla. En la primera tabla se deja el atributo del que dependian otros que sera clave ajena a la nueva tabla.
INSCRIPCIN(estudiante, actividad)
VERSIN (codprod, nmero, fecha, ventas) ACTIVIDAD(actividad, precio) VERSIN codprod ----------> Nulos PRODUCTO INSCRIPCIN actividad -----------> Nulos ACTIVIDAD Borrado Modificacin Borrado Modificacin
OJO! la nueva tabla hereda parte de la clave primaria Ejercicio: Rellena los huecos que faltan en la clave ajena.
Tema 8: Diseo lgico de bases de datos relacionales (IG18) 49
SOLICITUD
estudiante nombre Carlos Paula Paula Carlos Andrs apellido Gil Tena Tena Gil Calpe DNI 159357 913752 913752 159357 682432 direccin C/ Paz, 23 C/ Ro Po, 1 C/ Ro Po, 1 C/ Paz, 23 Plz. Sol, 40 codbeca A223 B567 A223 G654 G654 nombeca EEUU requisito Ing. Sup. fecha 10/10/98 12/11/98 14/10/98 17/09/98 12/09/99
No est en 3FN!
ERASMUS Ing. Tc. EEUU DRAC DRAC Ing. Sup. Ing. Sup. Ing. Sup.
Se extraen los atributos dependientes en otra tabla. En la primera tabla se deja el atributo del que dependian otros que sera clave ajena a la nueva tabla.
INQUILINO(inquilino, edificio) EDIFICIO(edificio, alquiler)
CONCEDIDAS
codbeca
edificio -----------> Nulos EDIFICIO Borrado Modificacin
nplaza 1 2 1 2
INQUILINO
G654