Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Diseño BD Relacionales PDF
Diseño BD Relacionales PDF
DISEÑO LÓGICO DE
BASES DE DATOS RELACIONALES
1. Introducción
3. Normalización
esquema conceptual
DISEÑO
información de la carga esquema lógico
LÓGICO
criterios de rendimiento
Información de la carga
Criterios de rendimiento
(0,n) (0,n)
PILOTO viaje AVIÓN
(0,n)
codpil nombre codavi matrícula
TRIPULACIÓN fecha
(0,n) (1,1)
codtrip nombre PILOTO AVIÓN
viaje
(1,1) (0,n)
(1,n)
codpil nombre codavi matrícula
(0,n)
TRIPULACIÓN
codtrip nombre
Tema 7. Diseño lógico de bases de datos relacionales 4
(b) Eliminar las relaciones redundantes.
(1,1) (1,1)
posee ANIMAL pertenece
(1,n) (1,n)
(1,n) (1,n)
ZOO alberga ESPECIE
(1,n) (0,n)
residencia
EMPLEADO CIUDAD
nacimiento
(0,1) (0,n)
(1,n)
autor
título
número año
idioma
título_ppal subtítulo
E1 a3 E2 a4 E3 a5
opción a1
(1) E a2
(0,1) (0,1)
(0,1)
opción opción
(2) a3 (3)
(0,1)
E1 E2 E3 a1
a4 (0,1)
E
a2
a5 (0,1) (0/1,1/n)
a3 a1 a2 a4 a1 a2 a5 a1 a2
AD
Tema 7. Diseño lógico de bases de datos relacionales 7
(1) Una tabla por cada entidad. Sirve para cualquier tipo de jerarquía (t/p, e/s).
(2) Una tabla por cada subentidad. Sólo sirve para jerarquías totales y exclusivas.
(3) Integrar todas las entidades en una tabla. Sirve para cualquier tipo de jerarquía (t/p, e/s).
hijo
(0,1) (1,1)
EMPLEADO conduce VEHíCULO
fecha_ini
codemp nombre matrícula modelo
hijo
(1,1) (0,1)
EMPLEADO conduce VEHíCULO
fecha_ini
codemp nombre matrícula modelo
¿Y si las dos entidades participan con cardinalidad (0,1)? ¿Y si son ambas (1,1)?
acompaña_a
Ejercicio
(0,1)
codper
PERSONA
nombre
(1,1)
es_acompañada_por
padre
(0/1,n) (1,1)
PROFESOR tutor ESTUDIANTE
fecha
codpro nombre codest nombre
padre
(0/1,n) (0,1)
HABITACIÓN ocupa ESTUDIANTE
fecha
numhab edificio codest nombre
padre ¿nulos?
(0/1,n) (0,1) HABITACIÓN(numhab, edificio)
HABITACIÓN ocupa ESTUDIANTE ESTUDIANTE(codest, nombre, numhab, fecha)
Nulos Borrado
numhab
fecha ESTUDIANTE HABITACION
numhab edificio codest nombre
(0/1,n) (¿,?)
CLIENTE CITA
recomienda_a
(0,n)
codcli CLIENTE
nombre
(1,1)
recomendado_por
(0,n) (1,n)
ASIGNATURA cursa ESTUDIANTE
(1,n) (0,n)
PACIENTE cita MÉDICO
(1,n) (0,n)
PACIENTE(codpac, nombre)
PACIENTE cita MÉDICO
MÉDICO(codmed, nombre)
Es lo más aconsejable cuando ambas La nueva tabla tiene una clave ajena a Esta nueva tabla tiene una
entidades participan en la relación de cada una de las dos tablas y también clave ajena a cada una de las
Añadir al esquema una forma opcional y hay pocas ocurren- los atributos de la relación binaria. La dos tablas y también los atribu-
nueva tabla en la que cias de la misma. Esta nueva tabla clave primaria de la nueva tabla será tos de la relación binaria. La
se refleje la relación tiene una clave ajena a cada una de la clave ajena que hace referencia a la clave primaria variará según el
binaria. las dos tablas y también los atributos tabla de la entidad que participa en la significado de la relación
de la relación binaria. relación binaria con cardinalidad binaria (hay que "meditarla").
máxima 1.
Utilizar los DFD para comprobar la consistencia y completitud de los esquemas lógicos.
Ventajas
Deseamos envíen:
PEDIDO
LÍNEA
x x x x x x
x x x x x
x x x x x
x x x x x
x x x x x x
x x x x x
PEDIDO LÍNEA
npedido npedido nproducto
x x x x x x x x x x x x
x x x x x x
x x x x x x x x x x x x
x x x x x x
npedido
LÍNEA PEDIDO
npedido nproducto
LÍNEA PEDIDO LÍNEA PRODUCTO
nprov
PEDIDO PROVEEDOR
npedido
LÍNEA PEDIDO
nproducto
LÍNEA PRODUCTO
Observaciones
¾La dependencia funcional es una noción semántica.
¾Cada dependencia funcional es una clase especial de regla de integridad.
¾Cada dependencia funcional representa una relación de uno a muchos.
SOLICITUD (estudiante, codbeca, fecha, nombre, apellido, DNI, dirección, nombeca, requisito)
A partir del esquema lógico obtenido y teniendo en cuenta el modelado de la carga ...
¾ Se pueden fundir varias relaciones en una si se usan juntas con frecuencia
mediante operaciones de JOIN Æ Desnormalización.
en las relaciones: