Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema3 PDF
Tema3 PDF
Contenidos
1
3. Modelo Entidad Relación
• Gran difusión
– Muy extendido en los métodos de diseño de bases de datos
– Soportado por herramientas software de diseño (CASE)
4
Tema 3. Modelo Entidad Relación
2
3.1. Introducción e historia del modelo
Entidad-Relación
En el proceso de diseño...
Requisitos
de datos
DISEÑO
CONCEPTUAL
Esquema
Conceptual MER
5
Tema 3. Modelo Entidad Relación
3
3.2. Conceptos básicos del
modelo
• Entidad ( entity
tit )
• Atributo ( attribute )
• Dominio ( values set )
• Relación ( relationship )
7
Tema 3. Modelo Entidad Relación
ENTIDAD
• Cosa u objeto del mundo real con existencia
propia y distinguible del resto
4
3.2. Conceptos básicos del modelo
ATRIBUTO
• Propiedad
p o característica de una entidad
• Una entidad particular es descrita por los valores de
sus atributos:
titulo = El alquimista impaciente
genero = Thriller
p1
nacionalidad = España
añoestreno = 2002
...
dni = 87654321
e1 nss = 1122334455
nombre = Cristina Aliaga Gil
nacionalidad = España
9
Tema 3. Modelo Entidad Relación
...
LOCAL ACTOR
CLIENTE
VIDEOCLUB
10
Tema 3. Modelo Entidad Relación
5
3.2. Conceptos básicos del modelo
6
3.2. Conceptos básicos del modelo
Tipos de atributos
• Simples o Compuestos
• Almacenados o Derivados
• Monovalorados o Multivalorados
• Opcionales
13
Tema 3. Modelo Entidad Relación
• Atributos compuestos
– Pueden dividirse en otros con significado propio
fechanacim direccion
dia mes año calle ciudad provincia codpostal
– Valor compuesto = concatenación de valores de
componentes
• Atributos simples
– No divisibles. Atómicos genero
14
Tema 3. Modelo Entidad Relación
7
3.2. Conceptos básicos del modelo
• Atributos derivados
– Valor calculado a partir de otra información ya
existente (atributos, entidades relacionadas)
– Son información redundante...
edad [de EMPLEADO], cálculo a partir de fechanacim
» atributo derivado del valor de otro atributo
numcopias [de una PELICULA], cuenta del número de
entidades COPIA relacionadas con cada película concreta
» atributo derivado de entidades relacionadas
• Atributos almacenados
fechanacim [de cada EMPLEADO]
nacionalidad [de una PELICULA]
15
Tema 3. Modelo Entidad Relación
8
3.2. Conceptos básicos del modelo
18
Tema 3. Modelo Entidad Relación
9
3.2. Conceptos básicos del modelo
Atributos Clave
• Atributo con valor distinto para cada instancia de un
tipo de entidad
dni en EMPLEADO
• Una clave identifica de forma única cada entidad concreta
Ö atributo identificador
• Notación
EMPLEADO EMPLEADO
dni dni
[EN2002] [MPM1999]
19
Tema 3. Modelo Entidad Relación
10
3.2. Conceptos básicos del modelo
11
3.2. Conceptos básicos del modelo
RELACIÓN (relationship)
• También “interrelación”
interrelación
• Asociación, vínculo o correspondencia
entre instancias de entidades relacionadas
de alguna manera en el “mundo real”
– el director “Alejandro Amenábar” ha rodado la película
“Mar adentro”
– el empleado 87654321 trabaja en el local de videoclub
“principal”
– la película “El imperio contraataca” es una continuación de
la película “La guerra de las galaxias”
24
Tema 3. Modelo Entidad Relación
12
DIRECTOR HA_RODADO PELICULA
Instancia
Tipo de Entidad: del tipo de relación
conjunto de instancias
Vacas
J. Médem Tesis
F. Trueba Torrente
S. Segura
g Tierra
• Notación
DIRECTOR HA_RODADO PELICULA
26
Tema 3. Modelo Entidad Relación
13
2.2. Conceptos básicos del modelo
original
VERSION_DE PELICULA
versión
28
Tema 3. Modelo Entidad Relación
14
3.2. Conceptos básicos del modelo
Restricciones estructurales sobre tipos de
relación
• Limitan las p
posibles combinaciones de
entidades que pueden participar en las
relaciones
• Extraídas de la situación real que se modela
“Una película debe haber sido dirigida por uno y sólo un
director”
“Un
Un director ha dirigido al menos una película y puede haber
dirigido muchas”
• Clases de restricciones estructurales:
– Razón de cardinalidad (o tipo de correspondencia)
– Razón de participación
29
Tema 3. Modelo Entidad Relación
15
3.2. Conceptos básicos del modelo
Razón de Cardinalidad
1 sucursal N film N
LOCAL_VIDEOCLUB PELICULA
lugar trabajo
31
Tema 3. Modelo Entidad Relación
sucursal
LOCAL_VIDEOCLUB PELICULA
lugar trabajo 32
Tema 3. Modelo Entidad Relación
16
3.2. Conceptos básicos del modelo
Razón de Participación
• Clases de participación:
– Participación total (dependencia en existencia)
– Participación parcial
33
Tema 3. Modelo Entidad Relación
• Notación
– Líneas dobles o
simples
DIRECTOR ACTOR
personaje M
1
trabajador
EMPLEADO HA__ RODADO ACTUA_EN
1 encargado 1
N film N
TRABAJA_EN SUPERVISA PELICULA PELICULA
sucursal N
1
LOCAL_VIDEOCLUB
lugar trabajo 34
Tema 3. Modelo Entidad Relación
17
Ejercicio 1
Diseñar con el modelo EER una BD de la siguiente situación:
35
Tema 3. Modelo Entidad Relación
e2 e2
p2 p2
e3 e3
p3 e4 p3 e4
36
Tema 3. Modelo Entidad Relación
18
3.2. Conceptos básicos del modelo
Cardinalidad de tipo de entidad
(1 )
(1,n) (0 )
(0,m)
PERSONA USA EDIFICIO
(0,n) (1,1)
POSEE
37
Tema 3. Modelo Entidad Relación
N N
1 PELICULA
LOCAL_VIDEOCLUB
EMPLEADO
ACTOR
(1,1) (0,n) (1,n)
TRABAJA_EN SUPERVISA ACTUA_EN
19
3.2. Conceptos básicos del modelo
Cardinalidad de tipo de entidad Notación MPM1999
(1,1) (0,n)
POSEE
39
Tema 3. Modelo Entidad Relación
20
3.2. Conceptos básicos del modelo
1 N
LOCAL_VIDEOCLUB fechainicio
horas
41
Tema 3. Modelo Entidad Relación
21
3.2. Conceptos básicos del modelo
1
MEDICO ncolegiado
Dependencia
especialidad nombre en existencia
43
Tema 3. Modelo Entidad Relación
N
numlicencia
PERMISO
CONDUCCION
tipo
22
3.2. Conceptos básicos del modelo
Tipo de entidad débil (iv)
Notación [MPM1999]
– Clases de dependencia:
• En existencia
• En identificación 45
Tema 3. Modelo Entidad Relación
• Dependencia en identificación
– Además de la dependencia en existencia...
– Una instancia del tipo de entidad débil no se
puede identificar por sí misma
– Su clave es (clave_entidad_regular, clave_parcial)
– Etiqueta “ID” en el tipo de relación débil 46
Tema 3. Modelo Entidad Relación
23
3.2. Conceptos básicos del modelo
[EN2002] [MPM1999]
Dependencia en existencia 48
Tema 3. Modelo Entidad Relación
24
3.2. Conceptos básicos del modelo
Tipo de entidad débil (viii)
Comparación de conceptos y notación (ii)
[EN2002] [MPM1999]
numprestamo PRESTAMO numprestamo
PRESTAMO
1 (1,1)
ID
TIENE
1:1 TIENE
N (0,n)
numpago numpago
PAGO PAGO
idpago
Entidad Débil de
Dependencia en identificación otra entidad débil
49
Tema 3. Modelo Entidad Relación
ACTUA_EN ACTUA_EN
M:N
N (1,n)
título título
PELICULA PELICULA
Participación total
50
Tema 3. Modelo Entidad Relación
25
3.2. Conceptos básicos del modelo
[EN2002] [MPM1999]
CLIENTE CLIENTE
(0,n) (1,1)
(0,1) (1,n)
ALQUILA CINTA ALQUILA CINTA
VIDEO VIDEO
fecha (0,m) (1 1)
(1,1)
f h
fecha
LOCAL LOCAL
VIDEOCLUB VIDEOCLUB
52
Tema 3. Modelo Entidad Relación
26
3.2. Conceptos básicos del modelo
Tipos de relación con grado
superior a dos (iii)
[EN2002]
idprov (1,n) PUEDE
PROVEEDOR PROVEEDOR SUMINISTRAR
codpr
cantidad (1,n) (1,m)
(0,m) (1,m)
SUMINISTRA PRODUCTO PROVEE PRODUCTO
fecha (1,p) (1 n)
(1,n) (0 )
(0,n)
TIENDA TIENDA VENDE
(1,m)
nombre
Pérdida de semántica... 53
Tema 3. Modelo Entidad Relación
[EN2002]
idprov
(1,n) PUEDE
PROVEEDOR SUMINISTRAR
nombre
54
Tema 3. Modelo Entidad Relación
27
3.2. Conceptos básicos del modelo
Tipos de relación con grado superior a dos (v)
• Otra solución: relación ternaria como entidad débil
(Entidad Asociativa)
55
Tema 3. Modelo Entidad Relación
idemp dni
[EN2002]
(0,n) (0,m)
EMPRESA REALIZA CANDIDATO
(1,1)
num (0,1) (1,1)
GENERA OFERTA
ENTREVISTA EMPLEO
fecha
idoferta
28
Ejercicio 2:Diseñar con el modelo EER una BD de un pequeño
aeropuerto.
• Control de cada avión registrado en el aeropuerto (Nº Registro, matrícula,
antigüedad, fecha registro,...).
• Cada avión es de un tipo determinado, recogiéndose de cada tipo su modelo,
capacidad y peso.
• Control de los hangares (Código hangar, capacidad y localización) donde se
estacionan aviones. Cada avión tiene designado un hangar.
• Control de los propietarios (individuales o corporativos) de aviones (nombre,
dirección, teléfono). Relación N:M. Se registrará la fecha de compra de cada
avión.
• Control de pilotos (Número de licencia). Están cualificados para pilotar
determinados tipos de aviones.
• Control de empleados de mantenimiento (salario y turno).
– Cualificados para trabajar en determinados tipos de aviones.
– Mantienen aviones específicos
– Para cada servicio de mantenimiento se registrará: fecha, código de trabajo y
horas trabajadas.
• Se registrará el NSS, nombre, dirección,... de todas las personas (mecánicos,
pilotos, propietarios individuales) de la BD.
57
Tema 3. Modelo Entidad Relación
Aportaciones
A t i de
d diversos
di autores
t all modelo
d l
Entidad-Relación «básico».
Permiten representar...
Relaciones exclusivas entre sí
Jerarquías de Especialización/Generalización
Agregación
ó de
d entidades
d d
58
Tema 3. Modelo Entidad Relación
29
3.3. Extensiones del modelo
Relaciones Exclusivas
CONSUME GASTA
GASOIL GASOLINA
60
Tema 3. Modelo Entidad Relación
30
3.3. Extensiones del modelo
E/G: Subtipo de un tipo de entidad
Agrupación de instancias dentro de un tipo de entidad, que
debe representarse explícitamente debido a su importancia
para ell diseño
di ñ o aplicación
li ió
Subtipos del tipo de entidad VEHÍCULO:
CAMIÓN
TURISMO
AUTOBÚS
CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO:
SECRETARIO
GERENTE
COMERCIAL
31
3.3. Extensiones del modelo
E/G: Relación Supertipo/Subtipo (ii)
La extensión de un subtipo
p es un subconjunto
j de la extensión del supertipo
p p
Una instancia de subtipo también es instancia del supertipo y es la misma
instancia, pero con un papel específico distinto
Una instancia no puede existir sólo por ser miembro de un subtipo: también
debe ser miembro del supertipo
Una instancia del supertipo puede no ser miembro de ningún subtipo
VEHÍCULO EMPLEADO_HOSPITAL
32
3.3. Extensiones del modelo
E/G: Especialización
65
Tema 3. Modelo Entidad Relación
PELÍCULA
color
[EN2002]
género
33
3.3. Extensiones del modelo
E/G: Especialización (iii)
1:1
[MPM1999] CELADOR SUPERVISA SECCIÓN_HOSPITAL
(1,1) (1,1)
67
Tema 3. Modelo Entidad Relación
numBastidor numBastidor
fechaFab VEHÍCULO
precio CAMIÓN
precio fechaFab
numEjes tonelaje
G CAMIÓN TURISMO
68
Tema 3. Modelo Entidad Relación
34
3.3. Extensiones del modelo
E/G: Generalización vs. Especialización
× Generalización
Énfasis en las similitudes
Cada instancia del supertipo es también una
instancia de alguno de los subtipos
Ø Especialización
Énfasis en las diferencias
Alguna instancia del supertipo puede no ser
instancia de ningún subtipo
69
Tema 3. Modelo Entidad Relación
Disyunción/Solapamiento
¿A cuántos subtipos puede pertenecer (a la vez)
una instancia del supertipo?
Completitud/Parcialidad
¿Debe toda instancia del supertipo pertenecer a
algún subtipo?
70
Tema 3. Modelo Entidad Relación
35
3.3. Extensiones del modelo
Restricciones sobre la E/G: Definición
PERSONA
estadoLaboral=en_activo matriculado=true
EMPLEADO ESTUDIANTE
71
Tema 3. Modelo Entidad Relación
PERSONA EMPLEADO_HOSPITAL
estadoLaboral claseTrabajo
en_activo
_ en_paro
_p
médico
celador
EMPLEADO PARADO enfermero limpiador
MÉDICO CELADOR ENFERMERO LIMPIADOR
[EN2002] [MPM1999]
72
Tema 3. Modelo Entidad Relación
36
3.3. Extensiones del modelo
Restricciones sobre la E/G: Definición (iii)
PROFESOR [MPM1999]
73
Tema 3. Modelo Entidad Relación
VEHÍCULO VEHÍCULO
d
TURISMO CAMIÓN TURISMO CAMIÓN
[EN2002] [MPM1999]
74
Tema 3. Modelo Entidad Relación
37
3.3. Extensiones del modelo
PERSONA PERSONA
o
EMPLEADO ESTUDIANTE EMPLEADO ESTUDIANTE
[EN2002] [MPM1999]
75
Tema 3. Modelo Entidad Relación
ANIMAL ANIMAL
[EN2002] [MPM1999]
76
Tema 3. Modelo Entidad Relación
38
3.3. Extensiones del modelo
E
Especialización
i li ió parcial
i l indica
i di que es posible
ibl que alguna
l
instancia del supertipo no pertenezca a ninguno de los subtipos
Es la opción «por defecto»
La unión de las extensiones de los subtipos no es la extensión
del supertipo en su totalidad
ALIMENTO ALIMENTO
[EN2002] [MPM1999]
d
77
Tema 3. Modelo Entidad Relación
Disjunta y Parcial
Solapada
S l d y Total
T t l
Solapada y Parcial
39
3.3. Extensiones del modelo
E/G: Especialización Disjunta y Total
EMPLEADO ESTUDIANTE
claseTrabajo tipo
cuerpoDocente
ocupación
dedicación
DOCENTE INVESTIGADOR
80
Tema 3. Modelo Entidad Relación
40
3.3. Extensiones del modelo
E/G: Reglas de inserción y eliminación
41
3.3. Extensiones del modelo
E/G: Jerarquías y Retículas
supertipo/subtipo
Un subtipo tiene un único supertipo: es el concepto de árbol
E una retícula
En tí l ded especialización...
i li ió
Un subtipo puede participar en varias
relaciones supertipo/subtipo
Un subtipo puede tener más de un supertipoÎ
Herencia múltiple 83
Tema 3. Modelo Entidad Relación
jornada jornada
fechaIni DESEMPLEADO salario EMPLEADO ESTUDIANTE carrera
dedicación tipoEstudiante
puesto beca
cuerpoDocente
42
3.3. Extensiones del modelo
E/G: Jerarquías y Retículas: Herencia múltiple
EMPLEADO
86
Tema 3. Modelo Entidad Relación
43
3.3. Extensiones del modelo
E/G: Jerarquías y Retículas:
Inhibición de la herencia
Algunos modelos de datos permiten indicar que ciertos atributos
del supertipo no deben ser heredados por los subtipos
POLÍGONO
[MPM1999]
numVértices
ancho
PENTÁGONO TRIÁNGULO RECTÁNGULO alto
CUADRADO lado
“ancho” y “alto” no deberían ser heredados por el subtipo
87
Tema 3. Modelo Entidad Relación
ancho
[MPM1999]
área RECTÁNGULO alto
área
CUADRADO lado
88
Tema 3. Modelo Entidad Relación
44
3.3. Extensiones del modelo
E/G: Jerarquías y Retículas:
Tratamiento de la herencia
• Consideraremos que en el MERE ...
– Los subtipos heredan todos los atributos de los supertipos
– Pero se permite la redefinición de atributos en los
subtipos, y la inhibición de la herencia de atributos
ancho
área RECTÁNGULO alto [MPM1999]
área
CUADRADO l d
lado
Ejercicio 3
90
Tema 3. Modelo Entidad Relación
45
3.3. Extensiones del modelo
Agregación de tipos de entidad
La agregación...
Permite combinar varios tipos de entidad, relacionados
91
Tema 3. Modelo Entidad Relación
46
3.3. Extensiones del modelo
Agregación de tipos de entidad (iii): Ejemplo 1
S l ió 1
Solución 1: Relación
R l ió ternaria
t i
OFERTA_EMPLEO [EN2002]
¡ERROR!
» Toda entrevista da lugar a un empleo
¡ESO ES FALSO!
93
Tema 3. Modelo Entidad Relación
Solución 2: [EN2002]
EMPRESA ENTREVISTA_A SOLICITANTE
RESULTA_EN
OFERTA EMPLEO
OFERTA_EMPLEO
¡ERROR!
NO es posible establecer una
relación entre varias relaciones,
ni entre relaciones y entidades
94
Tema 3. Modelo Entidad Relación
47
3.3. Extensiones del modelo
Agregación de tipos de entidad (v): Ejemplo 1
Entidad RESULTA_EN
COMPUESTA o
[EN2002]
AGREGADA
OFERTA_EMPLEO
OK!
48
3.3. Extensiones del modelo
Agregación de tipos de entidad (vii): Ejemplo 1
Solución 5:
nombre nif
EMPRESA fecha
SOLICITANTE
(0,n) (0,m)
(1,1) (1,1)
REALIZA ENTREVISTA SUFRE
(0,1)
(1,1) OFERTA
GENERA idOferta
EMPLEO
UTILIZA
N
MEDIO
49
3.3. Extensiones del modelo
Agregación de tipos de entidad (ix): Ejemplo 2
Solución:
PROFESOR
M N ASIGNATURA
EXPLICA
EXPLICACIÓN
M
Entidad COMPUESTA
o AGREGADA UTILIZA
N
MEDIO
99
Tema 3. Modelo Entidad Relación
100
Tema 3. Modelo Entidad Relación
50
Ejercicio 4
Asimismo, cada usuario tiene un nivel de estudios (sin estudios, estudios primarios, estudios secundarios y
titulación universitaria) y ha realizado una formación complementaria en base a cursos. Estos cursos tienen
una duración, un año de realización y una entidad de realización. También se desea almacenar información
sobre su situación temporal, distinguiendo entre si está desempleado o empleado.
En caso de estar desempleado, se necesita saber cuánto tiempo lleva inscrito en la oficina de empleo, si ha
trabajado anteriormente y, en este caso, una descripción del trabajo, su situación actual (parado sin empleo
anterior, parado con empleo anterior, perceptor de algún tipo de prestación). En caso de ser trabajador en
activo, se desea conocer el cargo que desempeña, el nombre del centro de trabajo y el tipo de contrato, si es
por cuenta propia
p p p o ajena
j (en
( este caso,, si es indefinido o temporal).
p )
Cada usuario tendrá un número de expediente, una persona de contacto en la organización y estará asociado
a un gabinete de orientación. Con respecto al seguimiento de los usuarios, se desea tener información acerca
de los contactos, la formación y el empleo de los usuarios. Con respecto a los contactos, se registra la fecha
de cada uno, el motivo, las observaciones y el tipo de contacto (personal, telefónico, email). Respecto de la
formación, interesa el curso de formación, sus fechas de inicio y fin y sus observaciones. Finalmente, se desea
guardar la información referida a la empresa, el puesto, el mediador y las fechas de inicio y fin de cada
empleo
51