Documente Academic
Documente Profesional
Documente Cultură
El modelo Entidad- Relacin, es un modelo de datos semntico. En la primera propuesta del Modelo E/R, Chen (1976), se distinguen en tan solo tres conceptos fundamentales: Entidad-Relacin-Atributos
Simbologa bsica
ENTIDAD
Cosa u objeto del mundo real con existencia propia y distinguible del resto
Persona, lugar, cosa, concepto o suceso, real o abstracto, de inters para la empresa (ANSI, 1977)
ATRIBUTO
Propiedad o caracterstica de una entidad Una entidad particular es descrita por los valores de sus atributos:
p1
titulo = El alquimista impaciente genero = Thriller nacionalidad = Espaa aoestreno = 2002 ...
e1
dni = 87654321 nss = 1122334455 nombre = Cristina Aliaga Gil nacionalidad = Espaa ...
6
Notacin
EMPLEADO CLIENTE PELICULA LOCAL VIDEOCLUB DIRECTOR ACTOR
Tambin...
Ocurrencia Realizacin p2 Ejemplar Entidad concreta o individual
PELICULA
titulo = El seor de los anillos genero = Fantasa nacionalidad = EEUU aoestreno = 2001 ...
titulo = Amelie genero = Comedia nacionalidad = Francia aoestreno = 2001 ...
8
p3
titulo = Amores perros genero = Drama nacionalidad = Mjico aoestreno = 1999 ...
p4
Un tipo de entidad describe el esquema o intensin para un conjunto de entidades que poseen la misma estructura EMPLEADO: dni, nss, nombre, direccin, telefono, altura, fechanacim, nacionalidad, edad Las instancias del tipo de entidad se agrupan en un conjunto de entidades o extensin
e1 (87654321, 1122334455, Cristina Aliaga Gil, Libertad, 2. Yecla. Murcia. 30510, 968100200, 160, 28/07/1979, Espaa, 23) e2 (12345678, 6677889900, Antonio Gil Snchez, Paz, 5. Murcia. Murcia.30012, 968111222, 176, 14/04/1944, Espaa, 58) e3 (11223344, 1234567890, Julia Sauce, Justicia, 20. Yecla. Murcia. 30510, 968000222, 159, 23/05/1947, Espaa, 55) ...
Intensin y Extensin
9
Tipos de atributos
Simples o Compuestos Almacenados o Derivados Monovalorados o Multivalorados Opcionales
10
Atributos compuestos
Pueden dividirse en otros con significado propio fechanacim direccion
dia mes ao calle ciudad provincia codpostal Valor compuesto = concatenacin de valores de componentes
Atributos simples
No divisibles. Atmicos genero
11
Atributos derivados
Valor calculado a partir de otra informacin ya existente (atributos, entidades relacionadas) Son informacin redundante... edad [de EMPLEADO], clculo a partir de fechanacim
atributo derivado del valor de otro atributo numcopias [de una PELICULA], cuenta del nmero de entidades COPIA relacionadas con cada pelcula concreta atributo derivado de entidades relacionadas
Atributos almacenados
fechanacim [de cada EMPLEADO] nacionalidad [de una PELICULA]
12
pueden tener lmites superior e inferior del nmero de valores por entidad
nacionalidad (1-2) telefono (0-3)
13
[EN2002]
calle ciudad provincia codpostal direccin EMPLEADO nss
(0,3) (0,1)
fechanacim nombre
telefono altura
(1,2)
dni
edad
nacionalidad
nss
dni edad
nacionalidad
15
Atributos Clave
Una clave identifica de forma nica cada entidad concreta atributo identificador Notacin
EMPLEADO dni dni EMPLEADO
[EN2002]
[MPM1999]
16
Atributos Clave
Una clave puede estar formada por varios atributos clave compuesta
Combinacin de valores distinta para cada instancia (nombre, fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser mnima
17
Atributos Clave
18
[MPM1999]
calle ciudad provincia codpostal fechanacim direccin nombre n-f nss EMPLEADO
D
(0,3) (1,2)
telefono altura
telefono altura
nacionalidad edad
dni
dni edad
nacionalidad
19
Conjunto de valores
Cada atributo simple est asociado a un dominio, que especifica sus valores vlidos
Atributo Dominio Descripcin Dominio cadenas de hasta 30 caracteres alfabticos nmeros reales entre 0 y 25 (metros) ...
nombre NOMBRES TELEFONOS MEDIDAS
20
EMPLEADO telefono
[MPM1999]
altura
RELACIN (relationship)
Tambin interrelacin Asociacin, vnculo o correspondencia entre instancias de entidades relacionadas de alguna manera en el mundo real
el director Alejandro Amenbar ha rodado la pelcula Mar adentro el empleado 87654321 trabaja en el local de videoclub principal la pelcula El imperio contraataca es una continuacin de la pelcula La guerra de las galaxias
21
DIRECTOR
HA_RODADO
Instancia del tipo de relacin
PELICULA
Vacas
Tesis Belle Epoque Torrente Tierra Abre los ojos Los otros
J. Mdem
C. Saura F. Trueba S. Segura A. Amenbar
22
Estructura genrica o abstraccin del conjunto de relaciones existentes entre dos o ms tipos de entidad
un DIRECTOR ha rodado PELICULAs
Notacin
DIRECTOR HA_RODADO PELICULA
23
Nmero de tipos de entidad que participan en el tipo de relacin Binaria: grado 2 (el ms frecuente) Ternaria: grado 3 Reflexiva (o recursiva): grado 1
ACTOR ACTUA_EN PELICULA
CLIENTE
ALQUILA
PELICULA
CONTINUACION DE
PELICULA
LOCAL_VIDEOCLUB
24
Todo tipo de entidad que participa en un tipo de relacin juega un papel especfico en la relacin
DIRECTOR HA_RODADO PELICULA
realizador
film
Los nombres de rol se deben usar, sobre todo, en los tipos de relacin reflexivos, para evitar ambigedad
original VERSION_DE versin PELICULA
25
Limitan las posibles combinaciones de entidades que pueden participar en las relaciones Extradas de la situacin real que se modela
Una pelcula debe haber sido dirigida por uno y slo un director Un director ha dirigido al menos una pelcula y puede haber dirigido muchas
26
Nmero mximo de instancias de tipo de relacin en las que puede participar una misma instancia de tipo de entidad
la cardinalidad de HA_RODADO es 1 a N HA_RODADO es de tipo 1 a N DIRECTOR
Notacin
etiqueta en la lnea que une entidad y relacin Ojo: da la sensacin de que se representa al revs
1
HA_RODADO
N
PELICULA
27
Razn de Cardinalidad
Notacin EN2002
28
Nmero mximo de instancias de un tipo de entidad que pueden estar relacionadas con una instancia del otro tipo de entidad Notacin
Etiqueta (1:1, 1:N, M:N) junto al tipo de relacin, o Flecha en sentido ... a N
trabajador EMPLEADO encargado SUPERVISA sucursal lugar trabajo LOCAL_VIDEOCLUB
1:1
TRABAJA_EN
1:N
PELICULA
29
Nmero mximo de instancias de un tipo de entidad a las que otra instancia puede estar asociada, va un conjunto de relaciones Notacin
flecha en el sentido ... a 1
trabajador EMPLEADO encargado SUPERVISA sucursal lugar trabajo LOCAL_VIDEOCLUB
ACTOR
TRABAJA_EN
ACTUA_EN
PELICULA
30
El modelo entidad-relacin ha sufrido una serie de extensiones, con el fin de incorporar y mejorar la semntica que es capaz de representar. Las mejoras apuntan a evitar ambigedades en la simbologa, como son el caso de:
La relacin que se genera entre dos entidades con una cardinalidad N:M, ya que sta es, en s misma, un tipo de entidad disfrazada. Esto se conoce como Agregacin. La no identificacin clara entre clases y subclases, como ocurre con la generalizacin y categorizacin. Extensiones del modelo
Dos (o ms) tipos de relacin son exclusivos, respecto de un tipo de entidad que participa en ambos, si cada instancia del tipo de entidad slo puede participar en uno de los tipos de relacin
VEHCULO
CONSUME
GASTA
GASOIL
GASOLINA
33
Caso especial de relacin entre un tipo de entidad y varios otros tipos de entidad La jerarqua o relacin que se establece entre uno y otros corresponde a la nocin de es_un o de es_un_tipo_de Estas jerarquas pueden formarse por especializacin o bien por generalizacin
34
Agrupacin de instancias dentro de un tipo de entidad, que debe representarse explcitamente debido a su importancia para el diseo o aplicacin
Es la relacin que se establece entre un supertipo y cada uno de sus subtipos (nocin es_un o
es_un_tipo_de)
EMPLEADO
[EN2002]
Notacin:
SECRETARIO
GERENTE
COMERCIAL
EMPLEADO
[SKS1998]
[MPM1999]
SECRETARIO
ES
GERENTE
COMERCIAL
36
La extensin de un subtipo es un subconjunto de la extensin del supertipo Una instancia de subtipo tambin es instancia del supertipo y es la misma instancia, pero con un papel especfico distinto Una instancia no puede existir slo por ser miembro de un subtipo: tambin debe ser miembro del supertipo Una instancia del supertipo puede no ser miembro de ningn subtipo
VEHCULO EMPLEADO_HOSPITAL
CAMIN
TURISMO
(1,n)
FABRICA
(1,1)
FABRICANTE
N:1 (1,1) ID
LLEVA
[MPM1999]
CAMIN TURISMO MOTOCICLETA
(0,1)
SIDECAR
numEjes
tonelaje numPuer
numPlazas
cilindrada 1:1
38
Proceso de definicin de un conjunto de subtipos de un tipo de entidad ( supertipo) Subtipos suelen estar definidos segn caracterstica distintiva de las entidades del supertipo Discriminante de la especializacin
EMPLEADO
[MPM1999]
actividad
SECRETARIO GERENTE COMERCIAL
39
[MPM1999]
tipo
motorS/N
VEHCULO_A_MOTOR
VEHCULO_SIN_MOTOR
CAMIN TURISMO
MOTOCICLETA
PELCULA
gnero
color
[EN2002]
DRAMA TERROR
COMEDIA
BLANCO_Y_NEGRO
COLOR
40
Conviene incluir relaciones subtipo/supertipo si hay... Atributos que slo tienen sentido para algunas instancias de un tipo y no para todas (atributos especficos) especialidadMdica no es aplicable a CELADOR
Tipos de relacin en los que slo participan algunas entidades de un tipo y no todas (relaciones especficas) Relacin SUPERVISA entre CELADOR y SECCIN_HOSPITAL
1:1
[MPM1999]
CELADOR
(1,1)
SUPERVISA
(1,1)
SECCIN_HOSPITAL
41
fechaFab
numBastidor
VEHCULO
precio
fechaFab
numEjes
tonelaje fechaFab
G
numPuer
CAMIN
TURISMO
numBastidor
precio
numEjes
TURISMO
tonelaje
numPuer
[EN2002]
42
Generalizacin
nfasis en las similitudes Cada instancia del supertipo es tambin una instancia de alguno de los subtipos
Especializacin
nfasis en las diferencias Alguna instancia del supertipo puede no ser instancia de ningn subtipo
43
Definicin
Qu instancias del supertipo pertenecen a cada subtipo?
Disyuncin/Solapamiento
A cuntos subtipos puede pertenecer (a la vez) una instancia del supertipo?
Completitud/Parcialidad
Debe toda instancia del supertipo pertenecer a algn subtipo?
44
Subtipos definidos por predicado o condicin Condicin de pertenencia a cada subtipo con base en el valor de algn atributo del supertipo Restriccin que especifica que... Las instancias del subtipo deben satisfacer la condicin Todas las instancias del supertipo que cumplen la condicin, deben pertenecer al subtipo
PERSONA
[EN2002]
matriculado=true
estadoLaboral=en_activo
EMPLEADO
ESTUDIANTE
45
estadoLaboral en_activo
EMPLEADO
claseTrabajo mdico
MDICO
en_paro
PARADO
celador
enfermero
limpiador
LIMPIADOR
CELADOR
ENFERMERO
[EN2002]
[MPM1999]
46
No existe (o no interesa definir) ninguna condicin de pertenencia a los subtipos El usuario, al insertar una instancia, elige a qu subtipo pertenece
PROFESOR
[MPM1999]
TITULAR
AYUDANTE
ASOCIADO
47
Disyuncin/Solapamiento
Subtipos disjuntos si una instancia del supertipo puede ser miembro de, como mximo, uno de los subtipos
VEHCULO VEHCULO
d
TURISMO CAMIN TURISMO CAMIN
[EN2002]
[MPM1999]
48
Subtipos solapados si una instancia del supertipo puede ser, a la vez, miembro de ms de un subtipo Es la opcin por defecto
PERSONA PERSONA
o
EMPLEADO ESTUDIANTE EMPLEADO ESTUDIANTE
[EN2002]
[MPM1999]
49
Completitud/Parcialidad
Especializacin total (completa) indica que toda instancia del supertipo tambin debe ser instancia de algn subtipo
ANIMAL ANIMAL
d
MACHO HEMBRA HERMAFRODITA MACHO HEMBRA HERMAFRODITA
[EN2002]
[MPM1999]
50
Especializacin parcial indica que es posible que alguna instancia del supertipo no pertenezca a ninguno de los subtipos Es la opcin por defecto La unin de las extensiones de los subtipos no es la extensin del supertipo en su totalidad
ALIMENTO ALIMENTO
[EN2002]
d
LACTEO FRUTA VERDURA LACTEO FRUTA
[MPM1999]
VERDURA
51
DOCENTE
ADMON_Y_SERV BECARIO
BECARIO
NO_BECARIO
TITULAR
CATEDRTICO
[MPM1999]
53
EMPLEADO
ESTUDIANTE
[MPM1999]
Deben aplicarse a la Especializacin y la Generalizacin, debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en todos los subtipos definidos por predicado o por atributo, para los cuales satisface el predicado de definicin Insertar una instancia en un supertipo de una especializacin total implica insertarla en, al menos, un subtipo Y si la especializacin es disjunta, entonces la instancia se insertar en un nico subtipo
55
Eliminar una instancia de un supertipo implica eliminarla de todos los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo si la especializacin es ... disjunta y total, o bien solapada y total, y la instancia ya slo pertenece al subtipo (se elimin del resto) En el resto de casos, la instancia slo se elimina del subtipo
56
Hasta ahora hemos estudiado jerarquas de especializacin en las que se cumple la restriccin: Todo subtipo participa en slo una relacin supertipo/subtipo
En una retcula de especializacin... Un subtipo puede participar en varias relaciones supertipo/subtipo Un subtipo puede tener ms de un supertipo
57
fechaIni DESEMPLEADO
jornada salario
EMPLEADO
ESTUDIANTE
dedicacin
DOCENTE ADMN_Y_SERV
puesto
BECARIO
beca
NO_BECARIO
En las jerarquas de especializacin Cada subtipo hereda atributos y relaciones... de su (nico) supertipo directo y de sus supertipos predecesores, hasta la raz
En las retculas de especializacin Un subtipo hereda atributos y relaciones... de sus supertipos (mltiples) directos herencia mltiple y de todos sus supertipos predecesores, hasta la raz
BECARIO hereda directamente de EMPLEADO y ESTUDIANTE, e indirectamente hereda de PERSONA Los subtipos compartidos dan lugar a retculas
59
En herencia mltiple pueden surgir conflictos al heredar atributos distintos denominados igual BECARIO hereda jornada de dos predecesores !! Cmo resolver esta situacin? Renombrar algunos de los atributos en conflicto BECARIO hereda ambos atributos: jornada corresponde a jornada de EMPLEADO y jornadaEstudio corresponde a jornada de ESTUDIANTE Definir un orden de prioridad en la herencia BECARIO hereda jornada de ESTUDIANTE y no de EMPLEADO
60
Inhibicin de la herencia
Algunos modelos de datos permiten indicar que ciertos atributos del supertipo no deben ser heredados por los subtipos
POLGONO numVrtices ancho PENTGONO TRINGULO RECTNGULO alto
[MPM1999]
CUADRADO
lado
61
Si un supertipo y un subtipo tienen un atributo con el mismo nombre, se entiende que el atributo del subtipo redefine el del supertipo
Se utiliza el mismo nombre y significado semntico pero se modifica cmo se calcula o cmo se representa el valor del atributo
RECTNGULO
alto rea
[MPM1999]
lado
62
CUADRADO
Tratamiento de la herencia
Consideraremos que en el MERE ... Los subtipos heredan todos los atributos de los supertipos Pero se permite la redefinicin de atributos en los subtipos, y la inhibicin de la herencia de atributos
ancho
rea
RECTNGULO
alto
[MPM1999]
rea lado
CUADRADO
... y si se da herencia mltiple y existe conflicto de nombres, el usuario elegir entre Renombrar algunos atributos en conflicto, o Inhibir la herencia de algunos atributos
63
Restriccin inherente del MER: No puede expresar relaciones entre varias relaciones, ni entre un tipo de relacin y un tipo de entidad La agregacin... Permite combinar varios tipos de entidad, relacionados mediante un tipo de relacin, para formar un tipo de entidad agregada de nivel superior til cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
64
Esquema en el MERE que almacena informacin sobre las entrevistas que una ETT organiza entre solicitantes de empleo y diferentes empresas
nombre EMPRESA direccin
(1,n)
M
[EN2002]
ENTREVISTA_A fecha nomContacto
(1,m) N
nif
SOLICITANTE nombre
telefContacto
telef
Algunas entrevistas dan lugar a ofertas de empleos y otras no cmo modelamos esto?
65
[EN2002]
ESO ES FALSO!
66
Solucin 2:
EMPRESA ENTREVISTA_A
[EN2002]
SOLICITANTE
RESULTA_EN
OFERTA_EMPLEO
ERROR!
NO es posible establecer una relacin entre varias relaciones, ni entre relaciones y entidades
67
Solucin 3:
EMPRESA
ENTREVISTA
ENTREVISTA_A
SOLICITANTE
RESULTA_EN
[EN2002]
OFERTA_EMPLEO
OK!
[EN2002]
(0,n)
REALIZA
(0,m)
SOLICITANTE
(1,1)
fecha ENTREVISTA
(0,1)
GENERA
(1,1)
nomContacto
telefContacto
Tipo de entidad dbil de otros dos Qu significa que ENTREVISTA tenga fecha como clave parcial?
69
[EN2002]
EMPRESA
(0,n)
REALIZA
(1,1)
fech a ENTREVISTA
(1,1)
(0,m)
SUFRE
(0,1)
GENERA
(1,1)
OFERTA EMPLEO
idOferta
EXPLICA
M
ASIGNATURA
UTILIZA
N
MEDIO
[EN2002]
ERROR! no es posible establecer una relacin entre una relacin y una entidad
71
Solucin:
[EN2002]
M N
PROFESOR
EXPLICA M
ASIGNATURA
EXPLICACIN
Entidad COMPUESTA o AGREGADA
UTILIZA N
MEDIO
72
MER : AGREGACIN
AGREGACIN COMPUESTO / COMPONENTE:
Un todo se obtiene por la unin de diversas partes, que pueden ser objetos distintos y que desempean papeles distintos en la agregacin.
COCHE
[MPM99] (1,1) CHASIS
(1,1) MOTOR
(4,4)
RUEDA
{NumBarco}
BARCO
73