Está en la página 1de 15

1 A.

J aime2005 DBD Tema2


Tema 2. Modelo entidad-relacin (ER)
Modelado de datos utilizando el modelo
entidad-relacin. Elmasri/Navathe 02
Entidad-relacin extendido y modelado de
objetos. 4.7. Tipos de relacin de grado superior a dos.
Elmasri/Navathe 02
Modelos de datos conceptuales de alto nivel para el
diseo de BD
Ejemplo
Tipos de entidad, conjuntos de entidad, atributos y
claves
Vnculos (o relaciones), tipos de vnculo (o tipos de
relacin), roles y restricciones estructurales
Tipos de entidad dbiles
Refinamiento del diseo ER para la BD ejemplo
Diagramas ER, convenciones de denominacin y
cuestiones de diseo
Tipos de vnculo (o relacin) de grado superior a dos
Ejemplos de diseo
2 A. J aime2005 DBD Tema2
Fases del diseo de BD
OBTENCIN
Y ANLISIS
DE REQUISITOS
DISEO
CONCEPTUAL
DISEO LGICO
(Transformacin del
modelo de datos)
DISEO
FSICO
ANLISIS
FUNCIONAL
DISEO DE
PROGRAMAS
DE APLICACIN
IMPLEMENTACIN
DE TRANSACCIONES
Requisitos de la BD
Esquema conceptual (ER)
Esquema lgico (ej. relacional)
Esquema interno
Requisitos funcionales
Especificacin
transacciones
Programas de aplicacin
Minimundo
I
n
d
e
p
e
n
d
i
e
n
t
e
E
s
p
e
c

f
i
c
o
d
e
d
e
l
S
G
B
D
c
a
d
a
S
G
B
D
3 A. J aime2005 DBD Tema2
Esquema conceptual
Descripcin concisa de los requisitos de
informacin de los usuarios.
Contiene descripciones detalladas de:
tipos de entidad
vnculos (o relaciones)
restricciones
No incluyen detalles de implementacin
Pueden servir para comunicarse con usuarios no
tcnicos
4 A. J aime2005 DBD Tema2
Ejemplo: BD Empresa
se ocupa de los empleados, departamentos y
proyectos de una empresa.
Requisitos de informacin:
Organizada en departamentos. Cada uno con
nombrey nmeronico. Tiene un director y su
fechade inicio. Puede estar distribuido en varios
lugares.
Cada departamento controla cierto nmero de
proyectos. Cada uno con nombrey nmeronicos
y se realiza en un solo lugar.
De cada empleado se guarda su nombre, nmero de
seguridad social, direccin, salario, sexoy fechade
nacimiento. Est asignado a un departamento pero
puede trabajar en varios proyectos (no tienen por
qu ser controlados por el mismo departamento). N
horassemanales dedicadas a cada proyecto y quin
es su supervisor.
De los familiares de cada empleado (para
administrar sus seguros) interesa su nombre, sexo,
fechade nacimiento y parentesco(hijo, esposa, ...).
5 A. J aime2005 DBD Tema2
Esquema ER
para la BD Empresa
TRABAJ A_PARA DIRIGE
TRABAJ A_EN
Nombre
Sexo
PROYECTO
Nombre
Nmero
Localizacin
DEPARTAMENTO
Nombre
Nmero
Localizaciones
Direccin Salario Nss
FechaNacimiento
NombreP Iniciales Apellido
FechaInic
NmeroDeEmpleados
Horas
CONTROLA
N
1
1
1
N
1
N
M
SUPERVISIN
1
N
supervisor
supervisado
FAMILIAR
FAMILIARES_DE
FechaNacimiento
Parentesco
Sexo
1
N
Nombre
EMPLEADO
6 A. J aime2005 DBD Tema2
Conceptos del modelo ER
Los datos se describen como:
Entidades
Atributos
Vnculos (o relaciones)
Otros conceptos:
Atributo simple,
compuesto, mono y
multivaluado,
almacenado y
derivado
Valor nulo
Atributo complejo
Tipo de entidad
Conjunto de entidades
Atributo clave
Dominio
Tipo de vnculo (o
relacin)
Grado de tipo de
vnculo
Vnculo (o relacin)
como atributo
Rol
Restricciones de
cardinalidady de
participacin
Atributos de tipo de
vnculo
Tipo de entidad dbil
Clave parcial
Tipo de vnculo
ternario
7 A. J aime2005 DBD Tema2
Entidades y atributos
Entidad: cosa del mundo real con existencia
independiente:
algo fsico: una cierta persona (Aitor), una casa,
un automovil, un empleado, ...
algo conceptual: una compaa (ACME), un
puesto de trabajo (secretario de centro), un
curso universitario (2 A), ...
Atributo: es una propiedad especfica de una
entidad (atributos de ACME: el nombre, su direccin, su
telfono, ...)
Cada entidad se describe mediante un conjunto de
atributos
Una entidad concreta tendr un valor para cada uno
de sus atributos
Entidad 1
Direccin=2311 Kirby,
Houston, Texas 77001
Nombre=J ohn Smith
Telfono=713-749-2630
Edad=55
8 A. J aime2005 DBD Tema2
Tipos de atributos. Valores nulos
Simple (o atmico):
Compuesto:
pueden formar una jerarqua
es la concatenacin de sus atributos simples
Monovaluado:
Multivaluado: (Donostia, Tolosa, Eibar)
Pueden tener lmites inferior y superior de nmero de
valores
Almacenado:
Derivado:
(calculado a partir de la fecha de nacimiento FechaN
Valores nulos, se asignan a atributos:
sin valor aplicable
(Ttulo universitario para personas sin ttulo)
de valor desconocido:
falta: altura de una persona
no se sabe si existe: n de telfono
Atributos complejos: anidaciones arbitrarias de atributos
compuestos y multivaluados
Localizaciones
Nombre Apellido1
NomPila
DNI
FechaN
Apellido1
FechaN
Edad
9 A. J aime2005 DBD Tema2
Tipo de entidad, claves y conjuntos de
valores
Tipo de entidad: conjunto de entidades que poseen
los mismos atributos (cada entidad su propio valor
para cada atributo) Por ejemplo: informacin de
empleados de una compaa
Se describe con su nombre y lista de atributos
Las entidades de un t. de entidad son el
conjunto de entidades o extensin del t. de
entidad.
El t. de entidad se llama intensin de su
conjunto de entidades
Atributo clave de un t. de entidad:
Tiene un valor nico para cada entidad del t. de
entidad (restriccin de clave o unicidad). Esto
se deber cumplir para cualquier extensin.
Ejemplo: DNI para personas
Puede ser un atributo compuesto
Debe ser mnima (sin atributos superfluos)
Algunos t. de entidad pueden tener ms de un
atributo clave
Puede haber t. de entidad sin clave: t. de entidad
dbil
Conjunto de valores (dominio) del atributo, es el
conjunto de todos los posibles valores que puede
tomar el atributo.
10 A. J aime2005 DBD Tema2
Tipos de entidad en la BD Empresa
DEPARTAMENTO
Nombre
Nmero
Localizaciones
Director
Fecha_Inicio_Director
PROYECTO
Nombre
Nmero
Localizacin
DepartamentoControlador
FAMILIAR
FechaNacimiento Parentesco Sexo
Empleado NombreFamiliar
Diseo inicial extraidode los requisitos:
EMPLEADO
Departamento
Supervisor
TrabajaEn
Nombre
Sexo Direccin Salario
Nss
FechaNacimiento
NombreP Iniciales Apellido
El libro le
llama
Gerente
11 A. J aime2005 DBD Tema2
Tipos de entidad en la BD Empresa (2)
En el ejemplo no se ha representado el n de horas
semanalesque trabaja un empleado en un proyecto
Se puede resolver haciendo que TrabajaEnest
compuesto de Proyecto y Horas
Una alternativa:
EMPLEADO
Departamento
Supervisor
TrabajaEn
Nombre
Sexo Direccin Salario
Nss
FechaNacimiento
NombreP Iniciales Apellido
Proyecto
Horas
PROYECTO
Nombre
Nmero
Localizacin
DepartamentoControlador
Trabajadores
Empleado
Horas
12 A. J aime2005 DBD Tema2
Vnculos implcitos en el ejemplo
Vnculo implcito: atributo que hace referencia a
otro tipo de entidad
En el ejemplo son vnculos implcitos: Gerente de
DEPARTAMENTO, DepartamentoControlador de
PROYECTO, Supervisor de EMPLEADO, ...
En el modelo ER estas referencias hay que
representarlas como vnculos (o relaciones)
Durante el diseo inicial los vnculos se pueden
capturar en forma de atributos
Al refinarse el diseo se transforman en vnculos
entre los t. de entidad
13 A. J aime2005 DBD Tema2
Vnculos (o relaciones)
Un tipo de vnculo R (como TRABAJ A_PARA) entre
n tipos de entidad(EMPLEADO, DEPARTAMENTO)
define un conjunto de asociaciones ( conjunto de
vnculos) entre las entidades de los n tipos de
entidad
Cada instancia de vnculo r R es una asociacin
de entidades que incluye una nica entidad de cada
tipo de entidad que participa en el tipo de vnculo
(Gonzalo, ATC), (Fernando, CCIA), (Txiki, CCIA)
Grado de un tipo de vnculo es el nmero de tipos
de entidad que participan (en el ejemplo grado=2)
Grado 2 =tipo de vnculo binario, grado 3 ternario.
Los ms comunes son los binarios.
EMPLEADO TRABAJ A_PARA DEPARTAMENTO
1
N
14 A. J aime2005 DBD Tema2
Vnculos como atributos
En ocasiones conviene considerar un tipo de
vnculo en forma de atributo
A stolo hemos llamado vnculo implcito
En el ejemplo anterior (TRABAJ A_PARA), con el
atributo Departamento en EMPLEADO (contiene el
departamento del empleado):
En los tipos de vnculo binarios, tambin se puede
incluir en DEPARTAMENTO (contiene todos los
empleados del departamento):
Si se incluye en ambos sitios, cada uno debera ser
el inverso del otro.
DEPARTAMENTO
Empleados
EMPLEADO Departamento
EMPLEADO TRABAJ A_PARA DEPARTAMENTO
1
N
Contiene una
referencia a la
entidad de
Departamento
15 A. J aime2005 DBD Tema2
Nombres de roles y vnculos recursivos
Nombre de rol indica qu papel desempea cada
entidad participante de un tipo de entidad en cada
instancia de vnculo
No son necesarios con tipos de entidad distintos
(se usa el nombre del tipo de entidad)
Si no, el nombre de papel es indispensable:
Estos ltimos tipos de vnculo se llaman vnculos
recursivos
EMPLEADO
N
supervisor
SUPERVISIN
1
supervisado
Trabajador o
empleado
Patrn o
departamento
EMPLEADO TRABAJ A_PARA DEPARTAMENTO
1
N
16 A. J aime2005 DBD Tema2
Restricciones estructurales
Razn de cardinalidad (vnculos binarios): n de
instancias de vnculo en las que puede participar
una entidad. Las ms comunes son:
1:1
1:N
N:M
Restriccin de participacin:
Total (dependencia de existencia): todo
empleado debe pertenecer a un departamento
Parcial: algunos empleados dirigen un
departamento (otros no)
pero todo departamento es dirigido por un
empleado (total)
EMPLEADO DIRIGE DEPARTAMENTO
1 1
EMPLEADO TRABAJ A_PARA DEPARTAMENTO
1
N
17 A. J aime2005 DBD Tema2
Atributos de tipo de vnculo
Son atributos asociados al tipo de vnculo:
Con tipos de vnculo 1:1 y 1:N este atributo puede
trasladarse a uno de los t. de entidad participantes:
(se poda haber trasladado a DEPARTAMENTO
en lugar de a EMPLEADO)
EMPLEADO TRABAJ A_EN PROYECTO
N M
Horas
EMPLEADO DIRIGE DEPARTAMENTO
1 1
FechaInicio
EMPLEADO DIRIGE DEPARTAMENTO
1 1
FechaInicio
18 A. J aime2005 DBD Tema2
Atributos de tipo de vnculo (2)
Con tipos de vnculo 1:N slo se pueden trasladar al
t. de entidad del lado N:
Cada empleado empieza en una fecha distinta, luego no
podemos poner una fecha comn en el departamento
En tipos de vnculo M:N no se puede trasladar, ya
que es un valor determinado por la combinacin de
entidades participantes en la instancia de vnculo
(no por una de ellas individualmente):
EMPLEADO DEPARTAMENTO
N
1
FechaInicio
TRABAJ A_PARA
EMPLEADO TRABAJ A_EN PROYECTO
N M
Horas
19 A. J aime2005 DBD Tema2
Tipo de entidad vs. Entidad
Tipo de vnculo vs. Vnculo
LIBRO LECTOR PRESTADO
Tipos de entidad
y
Tipo de vnculo
Cada uno es una
intensin, es
decir, representa
a un conjunto de
informacin
Ttulo Cdigo DNI Nombre
NCopias
El Sr. delos Anillos 3 Tolk-1
1984 2 Orw-1
M N
Wilt 1 Shar-1
LIBRO LECTOR
J oseba 11
Miren 22
Conjuntos de
entidades
representadas
(extensiones).
Cada lnea es
una entidad
NO puede haber 2 entidades de un tipo de entidades con todos sus
atributos iguales, ya en un conjunto no hay elementos repetidos
PRESTADO
11 Tolk-1
22 Tolk-1
11 Orw-1
22 Shar-1
Conjunto de
vnculos
representados
(extensin).
Cada lnea es
un vnculo
NO puede haber 2 vnculos de un tipo de vnculos con todos sus
atributos iguales, ya en un conjunto no hay elementos repetidos
20 A. J aime2005 DBD Tema2
Tipo de entidad dbil
Son los que no tienen atributos clave propios
Una entidad de un tipo de entidad dbil se identifica
por su vnculo con otra entidad de otro tipo de
entidad, en combinacin con alguno de los atributos
de esta ltima.
El tipo de entidad dbil siempre tiene una restriccin
de participacin total respecto al tipo de vnculo
identificador
No toda dependencia de existencia da lugar a una
entidad dbil:
PERSONA PERMISO_CONDUCIR TIENE
1 1
NmLicencia DNI
EMPLEADO FAMILIAR FAMILIARES_DE
FechaNacimiento Parentesco
NombreFamiliar
Sexo
1 N
Tipo de vnculo
identificador
Tipo de entidad
propietario o
identificador
Tipo de entidad
dbil
Nss
FechaNacimiento
. . .
Es clave
21 A. J aime2005 DBD Tema2
Tipo de entidad dbil (2)
Puede haber 2 empleados cuyos hijos (Parentesco) se
llamen Eduardo (NombreFamiliar, Sexo) y los hijos
hayan nacido el mismo da (FechaNacimiento)
Se trata de 2 Eduardosdistintos
Slo se puede distinguir a los 2 Eduardospor ser
hijos de distinto empleado
Se dice que cada entidad EMPLEADO posee a sus
entidades dependientes (las relacionadas con ella)
Clave parcial: atributo(s) que puede(n) distinguir a
las entidades dbiles relacionadas con la misma
entidad propietaria (distinguir a los familiares de un
mismo empleado)
En el caso peor, la clave parcial es la combinacin
de todos los atributos del tipo de entidad dbil
EMPLEADO FAMILIAR FAMILIARES_DE
FechaNacimiento Parentesco
NombreFamiliar
Sexo
1 N
Nss
FechaNacimiento
. . .
22 A. J aime2005 DBD Tema2
Tipo de entidad dbil (3)
Un tipo de entidad dbil tambin se puede representar
en forma de atributo multivaluadocomplejo:
Se elige como representacin el tipo de entidad dbil
cuando:
tiene muchos atributos
participa de manera independiente en otro
tipo de vnculo (adems de su tipo de vnculo
identificador)
Se pueden definir varios niveles de tipos de entidad
dbil:
Un tipo de entidad dbil puede tener ms de un tipo de
entidad propietario y un tipo de vnculo identificador
de grado mayor que dos
EMPLEADO
FechaNacimiento
Parentesco
NombreFamiliar
Sexo
Nss FechaNacimiento
. . .
Familiares
23 A. J aime2005 DBD Tema2
Refinamiento del diseo ER
para la BD Empresa
EMPLEADO DIRIGE DEPARTAMENTO
1 1
FechaInicio
Gerente
Fecha_Inicio_Gerente
PROYECTO DEPARTAMENTO
1 N
CONTROLA
DepartamentoControlador
EMPLEADO DEPARTAMENTO
N 1
TRABAJ A_PARA
Departamento
24 A. J aime2005 DBD Tema2
Refinamiento del diseo ER
para la BD Empresa (2)
EMPLEADO FAMILIAR FAMILIARES_DE
1 N
Empleado
EMPLEADO
N
supervisor
SUPERVISIN
1
supervisado
Supervisor
EMPLEADO TRABAJ A_EN PROYECTO
N M
Horas
TrabajaEn
Proyecto
Horas
25 A. J aime2005 DBD Tema2
Resumen de notacin para diagramas ER
TIPO DE ENTIDAD
TIPO DE ENTIDAD DBIL
TIPO DE VNCULO
TIPO DE VNCULO IDENTIFICADOR
ATRIBUTO
ATRIBUTO CLAVE
ATRIBUTO MULTIVALUADO
. . .
ATRIBUTO COMPUESTO
ATRIBUTO DERIVADO
ATRIBUTO CLAVE PARCIAL
26 A. J aime2005 DBD Tema2
Resumen de notacin para diagramas ER (2)
E1 R E2
E1 R E2
1 N
R E
(min, max)
PARTICIPACIN TOTAL
DE E2 EN R
RAZN DE CARDINALIDAD 1:N
PARA E1:E2 EN R
RESTRICCIN ESTRUCTURAL
(min, max)
EN LA PARTICIPACIN DE E EN r
27 A. J aime2005 DBD Tema2
Restricciones estructurales
notacin alternativa
EMPLEADO DEPARTAMENTO
N
1
TRABAJ A_PARA
EMPLEADO DEPARTAMENTO
(1,1)
(1,N)
TRABAJ A_PARA
mn indcaque cada entidad de E debe participar en
al menos mn instancias de vnculo de R en todo
momento
mx indcaque cada entidad de E debe participar en
como mucho mx instancias de vnculo de R en
todo momento
0<=mn<=mx y mx>=1
mn=0 indcaparticipacin parcial
mn>0 indcaparticipacin total
Esta notacin es ms precisa y se puede usar para
especificar restricciones estructurales para tipos de
vnculo de cualquier grado
R E
(mn, mx)
28 A. J aime2005 DBD Tema2
Nombres apropiados para los elementos
del esquema ER
Tipos de entidad: nombres en singular
Tipos de vnculo: verbos
Atributos: tambin son sustantivos
Tipos de entidad: en mayscula
Tipos de vnculo: en mayscula
Atributos : primera letra en mayscula
Roles : en minscula
Tipos de vnculo: ordenado de izdaa dcha(o de
arriba hacia abajo) de manera que se pueda leer
(por ejemplo FAMILIAR - FAMILIARES_DE -
EMPLEADO)
29 A. J aime2005 DBD Tema2
Elecciones de diseo
Un atributo se puede refinar en tipo de vnculo
por ser una referencia a un tipo de entidad
Tambin en caso de dos atributos, inverso el uno
del otro se refinan en el mismo tipo de vnculo
binario
Un atributo que est en varios tipos de entidad
puede refinarse en un tipo de entidad
independiente (con un solo atributo)
Ms adelante podran descubrirse nuevos atributos
para ese tipo de entidad
Lo inverso a lo anterior tambin es posible, cuando
hay un tipo de entidad con un solo atributo, que est
relacionado con un solo tipo de entidad
A B A B AB B
A B A AB B B A
A Z
B Z
C Z
Z Z
B C A
ZB B B Z
Z Z
AZ BZ CZ
30 A. J aime2005 DBD Tema2
Tipos de vnculo (o tipos de relacin) con
grado mayor que 2
En general el grado de un tipo de vnculo puede ser
cualquiera:
Ejemplo de tipo de vnculo ternario. Relaciona tros
de entidades. Por ejemplo (sum1, proy1, comp1) y
(sum1, proy2, comp4)
R
E1
E2
E3
En
E4
. . .
SUMINISTRA SUMINISTRADOR PROYECTO
COMPONENTE
Cantidad NombreProyecto
NmComponente
Apellido
31 A. J aime2005 DBD Tema2
Tipos de vnculo ternarios
Un tipo de vnculos ternario no representa lo mismo
que tres binarios:
SUMINISTRA SUMINISTRADOR PROYECTO
COMPONENTE
NombreProyecto
NmComponente
Apellido
PUEDE_
SUMINISTRAR
UTILIZA
M
M M
N
N N
s1
s2
c1
c1
p2
p1
c2
c2
s1
s2
c2
c2
p2
p1
c1
c1
Ejemplo: Para los suministradores s1 y s2, los componentes c1 yc2 y los pro-
yectosp1 y p2, obtener los tros de SUMINISTRA y los pares de las
relaciones binarias en los siguientes casos, donde representa
que el suministrador s suministra el componente c al proyecto p
s
c
p
SUMINISTRA SUMINISTRADOR PROYECTO
COMPONENTE
Cantidad NombreProyecto
NmComponente
Apellido
32 A. J aime2005 DBD Tema2
Tipos de vnculo ternarios (2)
Si slo tenemos vnculos binarios la representacin
de un tipo de vnculo ternario se hace del siguiente
modo:
(algunas herramientas de diseo de BD slo
admiten tipos de vnculo binarios)
El tipo de entidades dbil SUMINISTRA no tiene
clave parcial
Una entidad de SUMINISTRA se identifica mediante
la combinacin de las 3 entidades propietarias de
SUMINISTRADOR, COMPONENTE y PROYECTO
SUMINISTRADOR PROYECTO
COMPONENTE
Cantidad NombreProyecto
NmComponente
Apellido
SUMINISTRA SP SS
SC
1 1
1
N
N N
Sin clave
parcial
33 A. J aime2005 DBD Tema2
Tipos de vnculo ternarios (3)
OFRECE (grado3): el profesor p ofrece el curso c
durante el semestre s
PUEDE_IMPARTIR: el curso c pueden impartirlo los
profesores p1, p3, p4, ...
IMPARTI_DURANTE: durante el semestre s
impartieron clase los profesores p1, p3, p4, ...
OFRECIDO_DURANTE: en el semestre s se ofrecieron
los cursos c1, c2, c3, ...
Restricciones necesarias:
Ej. si existe (p1,c1,s1) en OFRECE, deben existir:
(p1,c1) enPUEDE_IMPARTIR
(p1,s1) en IMPARTI_DURANTE
(s1,c1) enOFRECIDO_DURANTE
PUEDE_
IMPARTIR
IMPARTI_
DURANTE
OFRECIDO_
DURANTE
PROFESOR SEMESTRE
CURSO
OFRECE
NmeroC
NombreP SemestreAo
Semestre
Ao
34 A. J aime2005 DBD Tema2
Tipos de vnculo ternarios (4)
Sin embargo si existen (p1,c1), (p1,s1) y (s1,c1)
No tiene por qu existir (p1,c1,s1) en OFRECE
Por ejemplo cuando sucede (p1,c1,s2), (p1,c2,s1),
(p2,c1,s1) y no sucede (p1,c1,s1)
Ahora incorporamos restricciones adicionales:
PUEDE_
IMPARTIR
IMPARTI_
DURANTE
OFRECIDO_
DURANTE
PROFESOR SEMESTRE
CURSO
OFRECE
NmeroC
NombreP SemestreAo
Semestre
Ao
1
1
Cuando un profesor puede impartir un nico curso
las dos relaciones binarias (IMPARTI_DURANTE y
PUEDE_IMPARTIR) son equivalentes a la ternaria
(OFRECE)
En ese caso es preferible quedarse con las
relaciones binarias y olvidarse de la ternaria
35 A. J aime2005 DBD Tema2
Tipo de entidad dbil con tipo de vnculo
identificador ternario
En este caso el tipo de entidad dbil ENTREVISTA
tiene varios tipos de entidad propietarios
(CANDIDATOyEMPRESA)
CEE
DA_LUGAR_A
CANDIDATO EMPRESA
ENTREVISTA
OFERTA_TRABAJ O
NombreE Nombre
Departamento
Fecha
Dep_Fecha
36 A. J aime2005 DBD Tema2
Restricciones estructurales en tipos de
vnculo de grado mayor que dos
Con (mn, max) se pierde parte del significado que tena
en relaciones binarias
El (1,N) significa que cada entidad de SUMINISTRADOR
aparecer como mnimo en un tro de SUMINISTRA y
como mximo en varios :
La notacin M:N:P aade la idea de clave.
Aqu se indica que la clave de SUMINISTRA es el par
(proyecto, componente). Es decir, no hay dos tros de
SUMINISTRA con igual proyecto y componente al
mismo tiempo:
Si no se aade esta segunda notacin se entiende que en
los extremos figura N, M y P (sin ningn 1).
Una relacin ternaria no tiene sentido si hay una o varias
binarias equivalentes (ni cuaternarias si hay ternarias ...)
No tiene sentido una ternaria etiquetada con 1:1:N
SUMINISTRA SUMINISTRADOR PROYECTO
COMPONENTE
Cantidad NombreProyecto
NmComponente
Apellido
(1,N) (0,N)
(0,N)
SUMINISTRA SUMINISTRADOR PROYECTO
COMPONENTE
Cantidad NombreProyecto
NmComponente
Apellido
(0,N) (0,N)
(0,N)
1 N
M
37 A. J aime2005 DBD Tema2
Ejemplo de diseo:
CAMIONES
Partiendo de los requisitos de datos siguientes dise-
ael diagrama ER. Haz las suposiciones que creas
convenientes, dejando constancia escrita de ellas.
La compaa de transportes CAMIONES recoge pedi-
dos de los almacenes de la cadena VELZQUEZ Hnos.
y las entrega a las tiendas de la misma cadena. De mo-
mentohay 6 almacenes y 45 tiendas. Cada tienda tiene
su propio nombre, y conocemos tambin su direccin y
telfono. Cada almacn tiene un nmero diferente ade-
ms de la direccin y telfono. Un camin puede trans-
portar varios pedidos en el mismo viaje y entregar cada
pedido a la tienda que lo solicit. Cada viaje se identifica
por un nmero. Cada pedido se identifica por un nme-
roe incluye datos sobre peso, volumen y tienda de desti-
no. Cada camin tiene el nmero de matrcula y su pro-
piolmite mximo de volumen y peso transportado. La
flota de la compaa CAMIONES consta de 150 veh-
culos y cada uno realiza entre 3 y 4 viajes semanales.
Deseamos contar con una BD para uso comn entre las
dos empresas, que sirva para:
Controlar el uso de los camiones (fechas).
Controlar las entregas (pedidos entregados)
Que ayude a programar los viajes (conocer los
pedidos hechos, de qu almacn a qu tiendas y los
viajes asignados a camiones)
Camiones
38 A. J aime2005 DBD Tema2
Diseo de CAMIONES (1)
Entender los pasos como gua de diseo
No son estrictos ni hay por qu darlos en ese orden
1) Identificar t. de entidad, atributos y claves:
Suposiciones:
Un pedido se toma completo de un almacn y se
entrega tambin completo a una sola tienda.
En un viaje interviene solo un camin, toma varios
pedidos de un almacn y los entrega a una o varias
tiendas.
PEDIDO
ALMACN
TIENDA
CAMIN
VIAJE
Nmero Peso Volumen
Tienda
Almacn
PesoMax
VolumenMax
Viaje
Direccin
Tfno
Nmero
Direccin
Tfno
Nombre
Nmero
Camin
Fecha
Matrcula
Almacn
39 A. J aime2005 DBD Tema2
Diseo de CAMIONES (2 y 3)
2) Identificar vnculos implcitos:
PEDIDO
ALMACN
TIENDA
CAMIN
VIAJE
Nmero Peso Volumen
Tienda
Almacn
PesoMax
VolumenMax
Viaje
Direccin
Tfno
Nmero
Direccin
Tfno
Nombre
TRANSPORTADO
3) Transformar vnculos implcitos en tipos de
vnculo:
PEDIDO
Viaje
VIAJE
PEDIDO Tienda
PEDIDO Almacn
A_ENTREGAR TIENDA
SOLICITADO ALMACN
VIAJE Camin REALIZADO_POR CAMIN
Nmero
Camin
Fecha
Matrcula
RECOGE VIAJE
Almacn
ALMACN
Almacn
40 A. J aime2005 DBD Tema2
Diseo de CAMIONES (4)
PEDIDO
ALMACN TIENDA
CAMIN
VIAJE
Nmero
Peso
Volumen
PesoMax
VolumenMax
Nmero
Direccin Tfno Nmero
Direccin
Tfno
Nombre
TRANSPORTA
A_ENTREGAR SOLICITADO
REALIZA
4) Establecer las restricciones de participacin y
cardinalidad a los tipos de vnculo
Matrcula
Fecha
Suposiciones:
Los pedidos se introducen antes de organizar el viaje.
En base a los datos de pedidos y ocupacin de
camiones el programa de aplicacin puede organizar
los viajes.
(0,N)
(1,1)
(1,N)
(0,1)
(1,1) (1,1)
(0,N) (0,N)
RECOGE
(1,1)
(0,N)
41 A. J aime2005 DBD Tema2
Diseo de CAMIONES (5 a 8)
CAMIN
VIAJE
PesoMax
VolumenMax
Nmero
REALIZA
Matrcula
Fecha
(0,N)
(1,1)
En este caso se puede
dejar en VIAJ E
5) Considerar atributos de vnculo:
6) Considerar tipos de entidad dbiles, su vnculo
identificador y su clave parcial.
7) Considerar el inters de convertir algn tipo de
entidad en tipo de vnculo y hacer que sus
atributos sean los del tipo de vnculo (como pasa
con INFORME_NOTA en el ejercicio 3.16).
8) Considerar el inters de tipos de vnculo de grado
mayor que 2.
9) Considerar el inters de convertir un atributo
que aparece en varios tipos de entidad en tipo de
entidad independiente o lo contrario (un tipo de
entidad con un solo atributo que se relaciona con
un nico tipo de entidad convertirlo en atributo)
10) Considerar el inters de tener representado un
tipo de vnculo mediante vnculos implcitos (en
una sola direccin o en ambas)
42 A. J aime2005 DBD Tema2
Ejercicios
43 A. J aime2005 DBD Tema2
Ejercicio 1
Completa los esquemas ER:
Una editorial publica varios libros o ninguno. Un
libro es publicado por una sola editorial:
Un autor puede escribir varios documentos. Un
documento puede tener varios autores.
Un tema puede estar dividido en subtemas. Un
subtemapuede dividirse en subsubtemas, etc. Un
subtema pertenece a un slo tema.
PUBLICA EDITORIAL LIBRO
ESCRIBE AUTOR DOCUMENTO
CONSTA TEMA
44 A. J aime2005 DBD Tema2
Ejercicio 2
Completa los esquemas ER:
Una editorial publica varios libros o ninguno. Un
libro es publicado por una sola editorial. Un lector
puede tomar prestados varios libros. Cada entidad
libro representa a todos los ejemplares del mismo.
Qu cambia si un mismo libro es publicado por
varias editoriales. Se desea saber la editorial de
cualquier libro prestado a un lector.
PUBLICAN EDITORIAL
LIBRO
TIENE LECTOR
45 A. J aime2005 DBD Tema2
Ejercicio 3
Completa el esquema ER:
En un pedido se pueden solicitar varios artculos. Interesa
conocer la cantidad solicitada (CantSolicitada) de cada artculo
en un pedido.
Cada artculo tiene un precio unitario (PrecioU). Se almacena
informacin que permite cobrar cada artculo de un pedido de
forma diferente segn quien sea el cliente y como sea el
pedido (PrecioC).
Un pedido se puede entregar en varios envos parciales. Esto
produce varias facturas por pedido. Se desea guardar el n de
unidades de un artculo (UnidadesEnv) recogidas en cada
factura. Tambin se desea conservar el n de unidades de cada
artculo que faltan por enviar en cada pedido (UnidadesPend).
Hay que tener en cuenta que tanto un pedido como una factura
pueden incluir diferentes artculos.
CLIENTE PEDIDO
ARTICULO FACTURA
C-P
F-A
F-P
P-A
DNI
NFac
NArt
NPed
1
N
N
N
N
M
M
1
46 A. J aime2005 DBD Tema2
Ejercicio 4
Un pedido (como el 25) puede constar de varias lneas.
Adems un pedido puede incluir varias lneas del mismo
artculo. Esto sucede, por ejemplo, cuando se solicitan
unidades de un artculo con diferente formato (ej. unidades en
formato Lujo y otras Normal, como con el artculo B5 del
pedido 25)
Un cliente puede tener ms de una tienda.
De acuerdo con lo anterior, completa el siguiente esquema ER
(atributos, claves, tipos de entidad dbil, tipos de vnculo):
PEDIDO
LNEA
PEDIDO LNEA
ARTCULO
CLIENTE
TIENDA
CONSTA
PERTENECE
SOLICITADO
TIENE
N_Pedido
N_Cliente
Direccin
Ciudad
N_Tienda
Direccin
(1,1)
(1,1)
(1,1)
(1,1)
(0,N)
(0,N)
(1,N)
(1,N)
Lnea
N_Pedido Cliente Direccin Ciudad
25 A. lvarez S. Martn 50 Donostia
33 J . Mugica Roteta20 Donostia
Lnea N_Pedido Artculo Cantidad
1 25 B5 100
2 25 B5 100
Tienda
1
1
Formato
Lujo
Normal
1 33 B3 4 1 Normal
47 A. J aime2005 DBD Tema2
Ejercicio: Universidad
(3.16 Elmasri/Navathe 02)
48 A. J aime2005 DBD Tema2
Ejercicio: BUQUES
Se quieren registrar las visitas a puertos realizadas por
los buques. Partiendo de los requisitos de datos
siguientes, disea el diagrama ER:
Cada buque se identifica con su nombre. Adems
interesa almacenar el nombre del dueo, qu tipo de
buque es y la historia de movimientos realizados.
Cada tipo de buque consta de un cdigo nico. Se
desea guardar tambin el tonelaje y el material del
casco. Puede haber varios buques del mismo tipo.
Por cada movimiento realizado por un buque se guarda
la longitud y latitud, y una marca temporal formada por
una fecha y una hora.
Cada buque est adscrito a un puerto, desde el que
inicia todas sus visitas. Cada puerto tiene un nombre,
una descripcin, el pas al que pertenece y el mar
donde se ubica. En ningn pas puede haber 2 puertos
de igual nombre. Sin embargo hay puertos con el
mismo nombre correspondientes a pases distintos.
Se guarda el nombre y continente de cada pas y el
nombre y profundidad media de cada mar. En ambos
casos, el nombre identifica unvocamente al pas y mar
respectivamente.
Por cada visita de un buque a un puerto interesa
guardar la fecha en la que arrib al puerto (fecha de
inicio) y la fecha de partida (fecha fin). Un buque
puede visitar muchas veces el mismo puerto. Si un
buque entra al mismo puerto varias veces el mismo da
slo se almacena la ltima visita del da.
49 A. J aime2005 DBD Tema2
Ejercicios: variantes de CAMIONES
Partiendo de los requisitos de datos presentados
anteriormente, considera las siguientes variantes al
problema:
A) Un pedido se compone de varios artculos. Cada
artculo se identifica por su nmero y contiene su
descripcin. Un mismo artculo puede figurar en
varios pedidos. Interesa guardar las unidades de un
artculo en un pedido. Todos los artculos de un
pedido provienen de un almacn y se entregan a
una tienda.
B) Considera el mismo caso del apartado anterior, pero
donde los artculos de un pedido pueden ir a
distintas tiendas. Interesa distinguir cuntas
unidades de cada artculo de un pedido se entregan
a cada tienda.
C) Considera la misma situacin del apartado B, pero
donde un pedido puede no entrar en el mismo
camin y entonces sus artculos se reparten en
distintos viajes.
Por ejemplo para el artculo 1 del pedido 1, dos
unidades pueden entrar en un viaje y otras 3
unidades deben ir en otro.
Camiones
50 A. J aime2005 DBD Tema2
D) Considera la misma situacin del apartado A, pero
ahora se desea guardar la informacin de las lneas
de detalle de cada pedido. Una lnea de detalle
consta de un nmero (distinto por cada lnea de un
mismo pedido), cdigo de artculo y unidades. Una
lnea de detalle corresponde a un nico pedido
E) Un artculo puede ser de diferentes colores. As en
un pedido queremos incluir la informacin del color
de los artculos. Plantea las modificaciones
pertinentes sobre la solucin al apartado D.
F) Considera la misma situacin del apartado B pero
incluyendo la informacin de lneas de detalle.
G) Reconsidera la situacin inicial (previa al apartado
A) si un viaje se identifica en lugar de con un
nmero, por camin, la fecha y un nmero de
orden en esa fecha (1 significa el primer viaje de
ese da, 2 el segundo viaje, ...)
Camiones
Ejercicios: variantes de CAMIONES (2)
51 A. J aime2005 DBD Tema2
Ejercicio: Biblioteca municipal
Una biblioteca almacena informacin de los libros que
toman en prstamo sus lectores. Por cada libro se guarda un
identificador nico, el ttulo y el nombre, direccin y
telfono de su editorial.
La biblioteca dispone de varios locales a los que llama
sucursales. La BD que debemos disear contiene
informacin a compartir por todas ellas.
Se dispone de una o varias copias de cada libro, que se
encuentran distribuidas por las sucursales. Les interesa saber
por cada libro el nmero de copias asignadas a cada
sucursal, y el identificador y nombre nicos de la sucursal
junto a la direccin de la sucursal.
Un ejemplar de un libro se puede encontrar en un momento
determinado fsicamente en la sucursal a la que est
asignado o bien puede estar prestado a un lector. De ste
ltimo sabemos cul es el nmero de su tarjeta (no hay dos
lectores con el mismo nmero de tarjeta), sabemos su
nombre, direccin y telfono.
Van guardando qu libros ha tomado prestado cada lector,
de qu sucursal lo ha tomado y la fecha de prstamo y
devolucin de la ltima vez que tom prestado el libro de la
sucursal.
Como tambin suelen hacer consultas por autores, quieren
almacenar los autores de cada libro. Ocurre que hay autores
diferentes que se llaman igual, as que han decidido
distinguir a dos autores con el mismo nombre por el libro del
que son autores, de manera que no puede haber dos autores
con el mismo nombre que hayan escrito el mismo libro
(distinguiendo a los libros por su identificador nico)
52 A. J aime2005 DBD Tema2
Ejercicio: Restaurante
El restaurante, adems de atender pedidos en el local, quiere ofrecer un
nuevo servicio de envo de pedidos a domicilio. Para dichos pedidos
interesa guardar la direccin y el telfono de contacto del solicitante del
pedido. Se aceptan anulaciones de pedidos, pero la informacin de un
domicilio se guardaraunque se haya anulado el pedido solicitado. Qu
cambiaras en el esquema E/R (aadir/eliminar/modificar) para incluir la
informacin relativa a domicilios?
Como se desprende del esquema E/R anterior, cada artculo lleva uno o
ms ingredientes y un ingrediente puede estar en ms de un artculo.
Ahora nos plantean la siguiente situacin:
En el restaurante hay ingredientes que pueden sustituirse por otros.
Por ejemplo en ocasiones la lechuga se sustituye bien por cogollos o
bien por escarola.
Puede coincidir que dos ingredientes distintos se sustituyan por el
mismo ingrediente. Por ejemplo los espaguetis y los macarrones
suelen sustituirse por tallarines.
Sin embargo las sustituciones no son generales, sino que se aplican
de forma diferente para cada artculo. Por ejemplo, en las pizzas los
championes se sustituyen por setas o por hongos, mientras que en
las ensaladas se sustituyen por maz o por hongos.
Qucambiaras en el esquema E/R (aadir/eliminar/modificar) para
incluir la informacin relativa a sustitucin de ingredientes?
INGREDIENTE
ARTCULO
PEDIDO
PRODUCTO
ESPECIAL
LLEVA
BASE DE
INCLUIDO
NomArt
Precio
NomIngr Precio
Tamao
Tipo
Fecha
Nmero
LLEVA
INCLUIDO
NomPrd
Cantidad Cantidad
Hora
pedido
Hora
servido
(1,N)
(0,N)
(0,N)
(0,N) (1,1)
(1,N)
(0,N)
(0,N)
(0,N)
(0,N)
Suministrador
Un restaurante de comida rpida sirve pedidos en el local. Cada pedido puede
incluir uno o varios artculos y productos especiales. Un artculo lleva uno o
varios ingredientes. Los productos especiales son ofertas del restaurante,
aparte de llevar los ingredientes del artculo sobre el que se basa, lleva uno o
varios ingredientes adicionales.
53 A. J aime2005 DBD Tema2
Ejercicio: Festival de cine
Disea un esquema E/R que recoja la siguiente
informacin sobre un festival de cine:
Un festival de cine almacena informacin de los
premios concedidos a lo largo de los aos, de las
pelculas participantes y de las personas que han
intervenido en las pelculas como productor,
director y como actor. Para cada premio interesa
saber la categora y ao del mismo (mejor actriz 98,
mejor director 2000, etc.), el dinero en euros, a qu
persona o personas les corresponde y la pelcula
(nica) a la que estasociado. A cada pelcula se le
asocia un cdigo y se guarda el ttulo y el gnero
(western, terror, etc.) al que pertenece. Para cada
persona se guarda su nombre, sexo, nacionalidad,
en qupelcula o pelculas ha participado como
actor, como director y como productor. Una
pelcula puede tener varios productores, varios
directores y varios actores. El jurado del festival
puede decidir no conceder un premio a ningn
participante (declararlo desierto).
54 A. J aime2005 DBD Tema2
Ejercicio: Mundial de ftbol
Disea un esquema E/R que recoja la siguiente informacin
sobre el mundial de ftbol Corea-J apn 2002. En esta BD
iremos almacenando informacin sobre los equipos
participantes y sus jugadores, el resultado obtenido en cada
partido, los controles antidopaje a los que se han sometido los
jugadores, y por ltimo, los hoteles en los que se aloja cada
equipo.
Para cada equipo interesa guardar el cdigo con el cual se
identifica, el nombre del pas, el nmero total de goles
marcados hasta el momento en el mundial y la camiseta que
viste.
Para cada partido jugado entre dos equipos se almacena la fecha en
la que se jug, el resultado (0-0, 2-0, 0-1, ...) y los rbitros que
dirigieron el partido (incluidos jueces de lnea, etc.). Dos
equipos pueden jugar entre s ms de una vez si van superando
las eliminatorias.
Para cada jugador de cada equipo, se guarda su nmero de DNI
(que incluye el cdigo del pas), nombre, fecha de nacimiento,
los clubes a los que ha pertenecido dicho jugador durante el
ltimo ao y el nmero de goles marcados en el mundial.
Cuando finaliza el mundial todo jugador ha debido pasar por un
control antidopaje obligatorio. Adems, los jugadores pueden
ser requeridos para realizar uno o ms controles adicionales. En
cada control se registra la fecha y el lugar en el que se realiz.
Por cuestiones de organizacin se desea guardar informacin sobre
los hoteles en los que se aloja cada equipo. Los equipos jugarn
los partidos en diferentes sedes, por lo que se alojarn en
distintos hoteles. En un mismo hotel slo se alojar un nico
equipo en todo el mundial. En la BD cada hotel se identifica
mediante un cdigo, y adems tiene un nombre, una direccin y
un telfono. Cada equipo reserva un nmero concreto de
habitaciones en cada hotel. Este ltimo dato tambin figuraren
laBD.
55 A. J aime2005 DBD Tema2
Ejercicio:
Autobuses universitarios
Las facultades y escuelas de la UPV/EHU (en adelante centros)
desean ofrecer a sus alumnos un servicio de autobuses para
trasladarlos desde el pueblo donde residen a su centro de estudios.
Para gestionarlo nos piden que diseemos un esquema E/R que
recoja la siguiente informacin:
Para cada centro de la universidad que ofrece este servicio se
desea guardar el cdigo que lo identifica, su nombre, su direccin
y cules son los autobuses que ha contratado.
Para cada alumno universitario que usa el servicio de autobuses se
almacena su DNI (a los extranjeros la universidad les asigna un
DNI propio diferente a cualquier otro DNI existente), su nombre,
los identificadores de los cursos en los que estmatriculado (por
ejemplo: 1de ITIS y 2de ITIS), el pueblo (nico) donde
reside y el centro (nico) en el que estmatriculado. Adems
figura para cada alumno en quautobuses puede viajar y para
cada uno de ellos en qufecha realizla inscripcin.
Para cada autobs contratado se dispondrde su matrcula,
nmero de asientos, nombre de la compaa (hay autobuses que
no pertenecen a ninguna compaa) y las paradas que realiza para
recoger y dejar a los alumnos que lo utilizan. Adems, como cada
centro de la universidad contrata autobuses de forma exclusiva (un
mismo centro puede contratar varios autobuses), para cada
autobs se dispondrdel centro (nico) que lo contrat.
De cada pueblo incluido en el servicio de autobuses se tiene su
cdigo identificativo, nombre, provincia y las paradas que realizan
los diferentes autobuses en el mismo (puede haber ms de una).
Por cada parada del pueblo se almacena la calle en la que est
situada. Una misma parada puede ser utilizada por ms de un
autobs. Distintos pueblos pueden tener calles con el mismo
nombre.
NO AADIR al esquema E/R INFORMACIN QUE NO SE
HAYA MENCIONADO (como nuevos atributos, vnculos...)
56 A. J aime2005 DBD Tema2
Ejercicio: club nutico
Disea un esquema E/R que recoja la informacin sobre
un club nutico segn la siguiente descripcin:
Se guarda el nombre, direccin, DNI, telfono y fecha de
ingreso de cada socio y sus embarcaciones (propiedad).
Cada embarcacin tiene una matricula, nombre, es de un
tipo y unas dimensiones. Figura un nico socio como su
propietario.
Cada amarre se identifica conjuntamente por zona y
nmero. Tambin se guarda la ltima lectura de los
contadores de agua y luz, la embarcacin a la que est
asignado (nica) y la fecha de asignacin del amarre a la
embarcacin. No puede haber varios amarres asignados a
la misma embarcacin.
Un socio puede ser propietario de uno o ms amarres. En
tal caso se guarda la fecha de compra del amarre. Un
amarre puede ser propiedad de un solo socio. No hay
ninguna relacin entre la fecha de compra de un amarre y
su fecha de asignacin.
Los amarres del club nutico se dividen en zonas. Cada
zona se identifica por una letra, contiene un determinado
tipo de barcos y todos sus amarres tienen la misma
profundidad y anchura. Lgicamente, un amarre
pertenece a una sola zona.
Los empleados se identifican por un cdigo. Adems
sabemos su nombre, direccin, telfono, especialidad y
por cada zona el nmero de barcos de los que se encarga.
Cada empleado est asignado a una o varias zonas. En
cada zona puede trabajar ms de un empleado.
57 A. J aime2005 DBD Tema2
Ejercicio: zoo
Disea un esquema E/R que recoja la informacin sobre un
zoosegn la siguiente descripcin:
Para cada especie interesa saber sus nombres vulgar y
cientfico, una pequea descripcin, los diferentes hbitat
naturales en los que puede vivir y las zonas del parque en
las que se encuentran.
Lgicamente hay varias especies que pueden vivir en un
mismo hbitat natural y en una misma zona del zoo puede
haber ms de una especie.
Por cada hbitat se almacena su nombre, clima, vegetacin
predominante y el continente o continentes en los que se
encuentra. Para cada zona del parque se guarda su nombre y
extensin en hectreas.
No hay dos especies con el mismo nombre cientfico ni dos
hbitat o dos zonas con el mismo nombre.
Se han establecido varios itinerarios que recorren el zoo.
Cada uno consta de un cdigo identificativo, duracin y
longitud del recorrido, y las zonas y especies incluidas.
Varios itinerarios pueden incluir la misma zona o la misma
especie. A cada itinerario se le asignan uno o ms guas.
Se organizan varias visitas diarias. Cada una se identifica
por su itinerario y nmero. Adems se tiene la hora de
comienzo, el mximo nmero de visitantes y el gua (nico)
asignado.
Para cada gua se guarda su dni, nombre, direccin, telfono
y fecha de alta como gua. Un gua puede llevar varios
itinerarios y varias visitas.

También podría gustarte