Está en la página 1de 100

Diseo de Bases de Datos

2. Modelo EntidadRelacin
Objetivos:

Conocer los conceptos y notacin del modelo


conceptual de datos entidad-relacin extendido.
Comprender los significados del concepto de
nulo en el modelo entidad-relacin extendido.

Contenidos:
1. Introduccin e historia del modelo
2. Conceptos bsicos del modelo
3. Extensiones del modelo

Modelo Entidad-Relacin
Bibliografa
[EN 2002] Elmasri, R.; Navathe, S.B. Fundamentos de
Sistemas de Bases de Datos. 3 ed. Addison-Wesley,
(Cap. 3 y 4)
[MPM 1999] De Miguel, A.; Piattini, M.; Marcos, E. Diseo
de bases de datos relacionales. Ra-Ma. (Cap. 2)
[CBS 1998]
Connolly, T.; Begg C.; Strachan, A. Database
Systems: A Practical Approach to Design,
Implementation and Management. 2nd ed. AddisonWesley. (Cap. 5)
[SKS 1998] Silberschatz, A;Korth, H; Sudarshan, S.
Fundamentos de Bases de Datos. 3 edicin. Madrid:
McGraw-Hill. (Cap. 2)

2.1. Introduccin e historia del


modelo Entidad-Relacin

Modelo de datos conceptual de alto nivel


Propuesto por Peter P. Chen en 1976

Extensiones/aportaciones de muchos otros autores


No existe un nico MER, sino una FAMILIA DE MODELOS

Describe el mundo real como un conjunto de


ENTIDADES y de RELACIONES entre ellas

Gran difusin

Muy extendido en los mtodos de diseo de bases de


datos
Soportado por herramientas software de diseo
(CASE)

2.1. Introduccin e historia del modelo


Entidad-Relacin

En el proceso de diseo...
Requisitos
de datos

DISEO
CONCEPTUAL

Esquema
Conceptual

MER
4

2.1. Introduccin e historia del modelo


Entidad-Relacin

Esquema conceptual

Descripcin concisa de los requisitos


de informacin de los usuarios

Descripciones detalladas de

TIPOS DE DATOS
RELACIONES ENTRE DATOS
RESTRICCIONES que los DATOS deben cumplir

Sin detalles de implementacin

Ms fcil de entender
Comunicacin con el usuario no tcnico

2.2. Conceptos bsicos


del modelo

Entidad ( entity )
Atributo ( attribute )
Dominio ( values set )
Relacin ( relationship )

2.2. Conceptos bsicos del modelo

ENTIDAD

Cosa u objeto del mundo real con


existencia propia y distinguible del resto

Objeto con existencia...

fsica o real (una persona, un libro, un empleado)


abstracta o conceptual (una asignatura, un viaje)

Persona, lugar, cosa, concepto o suceso, real o


abstracto, de inters para la empresa (ANSI, 1977)
7

2.2. Conceptos bsicos del modelo

ATRIBUTO

Propiedad o caracterstica de una entidad


Una entidad particular es descrita por los
valores de sus atributos:
titulo = El alquimista impaciente
genero = Thriller
p1
nacionalidad = Espaa
aoestreno = 2002
...
e1

dni = 87654321
nss = 1122334455
nombre = Cristina Aliaga Gil
nacionalidad = Espaa
...

2.2. Conceptos bsicos del modelo


TIPO DE ENTIDAD (entity set)

Define un conjunto de entidades que


poseen los mismos atributos
PELICULA: titulo, genero, nacionalidad, aoestreno,numcopias
EMPLEADO: dni, nss, nombre, fechanacim, direccion, telefono,
altura, nacionalidad, edad
Notacin
EMPLEADO

PELICULA

CLIENTE

LOCAL
VIDEOCLUB

DIRECTOR
ACTOR
9

2.2. Conceptos bsicos del modelo


Instancia de un tipo de entidad

Tambin...

p3

Ocurrencia
Realizacin
p2
Ejemplar
Entidad concreta
o individual

titulo = Amores perros


genero = Drama
nacionalidad = Mjico
aoestreno = 1999
...

PELICULA
titulo = El seor de los anillos
genero = Fantasa
nacionalidad = EEUU
aoestreno = 2001
...

p4

titulo = Amelie
genero = Comedia
nacionalidad = Francia
aoestreno = 2001
...
10

2.2. Conceptos bsicos del modelo

Intensin y Extensin

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.
11
30510, 968000222, 159, 23/05/1947, Espaa, 55)
...

2.2. Conceptos bsicos del modelo

Tipos de atributos

Simples o Compuestos
Almacenados o Derivados
Monovalorados o Multivalorados
Opcionales

12

2.2. Conceptos bsicos del modelo


Atributos Simples o Compuestos

Atributos compuestos

Pueden dividirse en otros con significado


fechanacim
direccion
propio
dia mes

ao

calle ciudad provincia codpostal

Valor compuesto = concatenacin de


valores de componentes

Atributos simples

No divisibles. Atmicos

genero
13

2.2. Conceptos bsicos del modelo


Atributos Almacenados o
Derivados

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]

14

2.2. Conceptos bsicos del modelo


Atributos Monovalorados o
Multivalorados

Atributos monovalorados (monovaluados)

slo un valor para cada entidad


fechanacim [de un EMPLEADO particular]
aoestreno [de cada PELICULA concreta]

Atributos multivalorados (multivaluados)

ms de un valor para la misma entidad


nacionalidad [ PELICULA coproducida por varios pases ]
telefono [ EMPLEADO con varios telfonos de contacto]
pueden tener lmites superior e inferior
del nmero de valores por entidad
nacionalidad (1-2)
telefono (0-3)

15

2.2. Conceptos bsicos del modelo


Atributos Opcionales (nulos)

El nulo (null value) es usado cuando...

Se desconoce el valor de un atributo para


cierta entidad

El valor existe pero falta

altura [de un EMPLEADO]

No se sabe si el valor existe o no

telefono [de un EMPLEADO]

La entidad no tiene ningn valor aplicable


para el atributo:
fechaalquiler [PELICULA slo en vdeo-venta (no alquiler)]

16

2.2. Conceptos bsicos del modelo

Notacin para atributos


[MPM1999]

[EN2002]
calle

ciudad

provincia
codpostal

direccin

fechanacim

(0,3)
(0,1)

telefono

EMPLEADO

nombre

altura

calle ciudad provincia


codpostal
fechanacim
direccin
(0,3)
nombre
telefono
EMPLEADO
altura

(1,2)

nss

dni

edad

nacionalidad

nss
dni edad

(1,2)

nacionalidad

17

2.2. Conceptos bsicos 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
Notacin
EMPLEADO
dni

[EN2002]

EMPLEADO
dni

[MPM1999]
18

2.2. Conceptos bsicos del modelo

Atributos Clave (ii)

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

Un tipo de entidad puede tener


ms de una clave claves candidatas
Claves o Identificadores Candidatos de

dni
nss
(nombre, fechanacim)

EMPLEADO:

19

2.2. Conceptos bsicos del modelo

Atributos Clave (iii)

Atributo identificador principal (IP)

Clave Principal
Elegido (por el diseador) de entre los
identificadores candidatos (IC), para ser
el medio principal de identificacin de
las instancias del tipo de entidad
dni en EMPLEADO

Atributos identificadores alternativos (IA)

Claves Alternativas
El resto de ICs
nss y (nombre, fechanacim) en EMPLEADO

20

2.2. Conceptos bsicos del modelo


Notacin para atributos clave
[EN2002]
codpostal
direccin

fechanacim
n-f
nombre

provincia

ciudad

calle

[MPM1999]

(0,3)
(0,1)

EMPLEADO
nss

(1,2)

IP

dni

telefono
altura

nacionalidad
edad

calle ciudad provincia


codpostal
fechanacim
direccin
(0,3)
nombre
telefono
EMPLEADO
altura
n-f
nss

dni edad

(1,2)

nacionalidad

En el MER es obligatorio que todo tipo de


entidad tenga un identificador

21

2.2. Conceptos bsicos del modelo


DOMINIO (values set)

Conjunto de valores

Cada atributo simple est asociado a un dominio, que


especifica sus valores vlidos

Atributo

Dominio

nombre NOMBRES

Descripcin Dominio
cadenas de hasta 30 caracteres alfabticos

telefono TELEFONOS cadenas de hasta 9 caracteres numricos

altura

MEDIDAS

nmeros reales entre 0 y 25 (metros)

...

...

...

No suele representarse,
aunque una forma de
hacerlo sera:

nombre

EMPLEADO telefono

[MPM1999]

altura

NOMBRES
TELEFONOS
MEDIDAS

22

2.2. Conceptos bsicos del modelo

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

23

DIRECTOR
PELICULA

HA_RODADO
Instancia
del tipo de
relacin

J. Mdem

C. Saura

F. Trueba

S. Segura

A. Amenbar

Vacas
Tesis
Belle Epoque
Torrente
Tierra
Abre los ojos
Los otros

Tipo de Entidad:
conjunto de instancias

Tipo de Relacin:
conjunto de instancias

24

2.2. Conceptos bsicos del modelo


TIPO DE RELACIN (relationship set)

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

25

2.2. Conceptos bsicos del modelo

Grado de un tipo de
relacin
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

CLIENTE
CONTINUACION
DE

PELICULA

PELICULA

ALQUILA

PELICULA

LOCAL_VIDEOCLUB

26

2.2. Conceptos bsicos del modelo

Nombres de Rol (papel)

Todo tipo de entidad que participa en un tipo


de relacin juega un papel especfico en la
relacin
DIRECTOR

realizador

HA_RODADO

film

PELICULA

Los nombres de rol se deben usar, sobre


todo, en los tipos de relacin reflexivos, para
evitar ambigedad
original
VERSION_DE

versin

PELICULA

27

2.2. Conceptos bsicos del modelo


Restricciones estructurales sobre tipos de
relacin

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

Clases de restricciones estructurales:

Razn de cardinalidad (o tipo de


correspondencia)
Razn de participacin

28

2.2. Conceptos bsicos del modelo


Razn de Cardinalidad Notacin
EN2002

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

29

2.2. Conceptos bsicos del modelo


Razn de Cardinalidad Notacin
EN2002

Razones de cardinalidad ms comunes:


1:1 (uno a uno)
1:N (uno a muchos)
M:N (muchos a muchos)
trabajador
1
TRABAJA_EN
1
lugar trabajo

EMPLEADO
encargado 1
SUPERVISA
sucursal N
LOCAL_VIDEOCLUB

ACTOR
personaje M
ACTUA_EN
N
film
PELICULA

30

2.2. Conceptos bsicos del modelo


Razn de Cardinalidad Notacin
[MPM1999]

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

1:1

TRABAJA_EN

ACTOR

EMPLEADO
encargado

1:N

SUPERVISA

M:N

ACTUA_EN

sucursal
lugar trabajo

LOCAL_VIDEOCLUB

PELICULA

31

2.2. Conceptos bsicos del modelo


Razn de Cardinalidad Notacin [SKS1998]

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

TRABAJA_EN

SUPERVISA

ACTOR

ACTUA_EN

sucursal
lugar trabajo

LOCAL_VIDEOCLUB

PELICULA

32

2.2. Conceptos bsicos del modelo


Razn de Participacin Notacin
[EN2002]

Especifica si toda la extensin de un tipo


de entidad participa en un tipo de
relacin, o slo parte de la extensin
Indica si hay dependencia en existencia
de un tipo de entidad respecto de un
tipo de relacin
Clases de participacin:

Participacin total (dependencia en existencia)


Participacin parcial

33

3.2. Conceptos bsicos del modelo


Razn de Participacin (ii)

[EN2002]

Notacin

Lneas
dobles o
simples

trabajador
1
TRABAJA_EN
1
lugar trabajo

EMPLEADO
encargado 1
SUPERVISA

DIRECTOR
1

HA_ RODADO
N

PELICULA

ACTOR
personaje M
ACTUA_EN
N
film
PELICULA

sucursal N
LOCAL_VIDEOCLUB

34

2.2. Conceptos bsicos del modelo


Cardinalidad de tipo de entidad

Otra forma de expresar las razones de


cardinalidad y participacin
PERSONA

PERSONA

EDIFICIO

USA

EDIFICIO

POSEE

PERSONA

USA
p1

POSEE
e1

p1

p2

e1
e2

e2
p2
e3
p3

EDIFICIO

e4

e3
p3

e4

35

2.2. Conceptos bsicos del modelo


Cardinalidad de tipo de entidad Notacin
[EN2002]

Nmeros mnimo y mximo de instancias


del tipo de relacin en las que puede
intervenir una instancia del tipo de
entidad
Notacin

(min, max) en la lnea que une entidad y relacin


(1,n)
PERSONA
(0,n)

USA
POSEE

(0,m)

EDIFICIO

(1,1)

36

2.2. Conceptos bsicos del modelo


Cardinalidad de tipo de entidad (iii)
1
TRABAJA_EN

EMPLEADO
1

ACTOR

SUPERVISA

ACTUA_EN

LOCAL_VIDEOCLUB

(1,1)
TRABAJA_EN
(1,1)

[EN2002]
M

N
PELICULA

EMPLEADO
(0,n)

ACTOR

SUPERVISA

ACTUA_EN

(1,1)
LOCAL_VIDEOCLUB

(1,n)

(0,m)
PELICULA

37

2.2. Conceptos bsicos del modelo


Cardinalidad de tipo de entidad Notacin
MPM1999]

Nmeros mnimo y mximo de instancias


de un tipo de entidad que pueden estar
relacionadas con una instancia del otro
tipo de entidad
Notacin

(min, max) en la lnea que une entidad y relacin


PERSONA

(0,m)
(1,1)

USA
POSEE

(1,n)

EDIFICIO

(0,n)

38

2.2. Conceptos bsicos del modelo


Cardinalidad de tipo de entidad (v)

Comparacin de notaciones

[EN2002]
PERSONA

PERSONA

(0,n)

POSEE

(1,1)

EDIFICIO

EDIFICIO
POSEE

p1

POSEE ( PERSONA(0,n) : EDIFICIO(1,1) )

e1
e2

p2
e3

[MPM1999]
PERSONA

(1,1)

POSEE

(0,n)

EDIFICIO

p3

e4

POSEE( PERSONA(1,1) : EDIFICIO(0,n) )

En toda notacin, la cardinalidad de una entidad


es la etiqueta de la lnea que la une a la relacin

39

Cardinalidad de tipo de
entidad de notaciones (ii)
Comparacin
[EN2002]

EMPLEADO

SUPERVISA

LOCAL
VIDEOCLUB

1:N

[MPM1999]

[SKS1998]

EMPLEADO

EMPLEADO

(1,1)

SUPERVISA

LOCAL
(0,n) VIDEOCLUB

SUPERVISA

LOCAL
VIDEOCLUB

40

Cardinalidad de tipo de
entidad
Cardinalidad de tipos de entidad recursivos
superior (0,n)

[EN2002]

subalterno
EMPLEADO (0,1)
N

continuacin (0,1)
PELICULA

[MPM1999]
versin (0,n)
PELICULA

precuela
(0,1)

original
(0,1)

1
JEFE DE

SECUELA DE

VERSIONA

1:1

N:1

41

Atributos de tipos de relacin


[EN2002]
horas

EMPLEADO
1

1
TRABAJA_EN

SUPERVISA

fechainicio

LOCAL_VIDEOCLUB

[MPM1999]

M:N
ACTOR

(0,m)

ACTUA_EN

papel
salario
(1,n)

PELICULA

42

2.2. Conceptos bsicos del modelo

Atributos de tipos de relacin


(ii)
Conceptualmente pertenecen a la relacin

Un atributo de una M:N es propio de la relacin


Un atributo de una 1:1 o 1:N se puede llevar a
uno de los tipos de entidad participantes
1
horas

TRABAJA_EN

EMPLEADO
1
SUPERVISA

fechainicio

LOCAL_VIDEOCLUB

[EN2002]

horas

horas

fechainicio

43

2.2. Conceptos bsicos del modelo


Tipo de Entidad Dbil Notacin
[EN2002]

No tiene atributos clave propios


Una instancia se identifica por su relacin
con una instancia de otro tipo de entidad

Tipo de relacin identificador

Clave parcial (o discriminante)

Relaciona un tipo de entidad dbil y un tipo de


entidad regular (fuerte, dominante, padre, propietaria)
Atributos de la entidad dbil, que identifican de forma
nica cada instancia, siempre que est relacionada
con una instancia del tipo de entidad regular

Clave = (clave_entidad_regular, clave_parcial)

Notacin
COPIA

44

2.2. Conceptos bsicos del modelo

Tipo de entidad dbil (ii) [EN2002]


nss

Tipo de
Entidad
Regular
Tipo de
Relacin
Identificador

PACIENTE
1
ACUDE
N

PELICULA
1
TIENE
N

diahora

VISITA_MEDICA

titulo

COPIA

numcopia

N
Clave parcial o
Discriminante

ASISTIDA
POR
1
MEDICO
especialidad

ncolegiado
nombre

Dependencia
en existencia

45

2.2. Conceptos bsicos del modelo


Tipo de entidad dbil (iii) [EN2002]

No toda participacin total (o dependencia en


existencia) implica un tipo de entidad dbil
EMPLEADO

dni

1
POSEE
N
PERMISO
CONDUCCION

numlicencia
tipo

PERMISO_CONDUCCIN no es dbil: depende en existencia de


EMPLEADO, pero tiene clave primaria propia

46

Tipo de entidad dbil (iv)


Notacin [MPM1999]

Definicin distinta de tipo de entidad dbil

La existencia de una instancia del tipo de


entidad dbil depende de la existencia de
una instancia del tipo de entidad regular

Tipo de relacin dbil (o dependencia)

Relaciona un tipo de entidad dbil y otro regular

Clases de dependencia:

En existencia
En identificacin

47

2.2. Conceptos bsicos del modelo


Tipo de entidad dbil (v)

Dependencia en existencia

[MPM1999]
(

entre

entidades)
Si desaparece una instancia del tipo de entidad
regular deben desaparecer las instancias de
la entidad dbil que dependen de ella
Etiqueta E en el tipo de relacin dbil

Dependencia en identificacin

Adems de la dependencia en existencia...


Una instancia del tipo de entidad dbil no se
puede identificar por s misma
Su clave es (clave_entidad_regular, clave_parcial)
Etiqueta ID en el tipo de relacin dbil
48

2.2. Conceptos bsicos del modelo


Tipo de entidad dbil (vi)
dni

EMPLEADO

1:N

E
POSEE

[MPM1999]
PELICULA

Tipo de
Relacin
Dbil
1:N

ID
TIENE

numlicencia
tipo

titulo

numcopia
PERMISO
CONDUCCION

PERMISO_CONDUCCION es
dbil, pues depende en
existencia de EMPLEADO, pero
no depende en identificacin

COPIA
idcopia

COPIA es dbil, pues depende


en existencia de PELICULA, y
tambin depende en
identificacin

49

Tipo de entidad dbil (vii)


Comparacin de conceptos y notacin

[EN2002]
CLIENTE

[MPM1999]
dni

(1,1)
E
POSEE

POSEE
N
PRESTAMO

dni

CLIENTE

numprestamo

Dependencia en existencia

1:N

(0,n)
PRESTAMO

numprestamo

50

Tipo de entidad dbil (viii)


Comparacin de conceptos y notacin (ii)

[EN2002]
PRESTAMO

[MPM1999]
PRESTAMO

numprestamo

(1,1)

TIENE

1:1

N
PAGO

numprestamo

numpago

ID
TIENE
(0,n)
PAGO

numpago
idpago

Dependencia en identificacin

Entidad Dbil de
otra entidad dbil

51

Tipo de entidad dbil (ix)


Comparacin de conceptos y notacin (iii)

[EN2002]
ACTOR

[MPM1999]
nombre

ACTUA_EN
(1,n)

nombre

(0,m)

ACTUA_EN

PELICULA

ACTOR

titulo

PELICULA

M:N
titulo

Participacin total
52

Tipos de relacin con grado superior


a dos
[EN2002]

[MPM1999]

CLIENTE

(0,n)
ALQUILA
fecha (0,m)
LOCAL
VIDEOCLUB

CLIENTE

(0,1)

(1,1)
CINTA
VIDEO

ALQUILA
fecha

(1,1)

(1,n)

CINTA
VIDEO

LOCAL
VIDEOCLUB

Cardinalidad de los tipos de entidad


53

Tipos de relacin con grado


superior
dos (ii)
Equivalenciaaternaria
varias binarias
[EN2002]

fecha

(0,n)
CLIENTE

(0,n)
ALQUILA

fecha

(0,m)
LOCAL
VIDEOCLUB

CLIENTE

(0,1)

(0,1)

(1,m)
CINTA
VIDEO

CINTA
VIDEO

ALQUILA_EN

(1,n)
LOCAL
VIDEOCLUB

ALQUILA

(1,1)
(1,n)

CONTIENE

54

Tipos de relacin con grado


superior a dos (iii)
[EN2002]

PROVEEDOR
cantidad

(1,n)
SUMINISTRA

fecha

idprov

(1,n)
codpr

(0,m)
PRODUCTO

(1,p)
TIENDA

PROVEEDOR

PUEDE
SUMINISTRAR

(1,m)

(1,m)
PROVEE

PRODUCTO

(1,n)

(0,n)

TIENDA

VENDE

(1,m)
nombre

Prdida de semntica...

55

Tipos de relacin con grado


superior
a dos
(iv) ternaria/binarias
Solucin tpica:
coexistencia

[EN2002]
idprov

(1,n)

PROVEEDOR

(1,m)
PROVEE

(1,n)
TIENDA

(1,n)

(0,m)

SUMINISTRA

(1,p)

cantidad

fecha

(1,m)

PUEDE
SUMINISTRAR

(1,m)

codpr

PRODUCTO

(0,n)
VENDE

nombre

56

Tipos de relacin con grado


Otra solucin:
ternaria como
superior
a relacin
dos (v)

entidad dbil (Entidad Asociativa)

[EN2002]
(1,1)
REALIZA

(1,n)

fecha

cantidad

SUMINISTRO

(1,1)

PROVEEDOR

(1,1)
CONTIENE

(0,n)
PRODUCTO

RECIBE

idprov

(1,n)
nombre

codpr

TIENDA

57

Tipos de relacin con grado


superior
dos (vi)
Relacionesa
ternarias
falsas
idemp

dni

EMPRESA

(0,n)
num

fecha

REALIZA

(0,m)

[EN2002]

CANDIDATO

(1,1)
ENTREVISTA

(0,1)

GENERA

(1,1)

OFERTA
EMPLEO
idoferta

Tipo de entidad dbil de ms de un tipo de entidad

58

2.3. Extensiones del modelo


Modelo Entidad-Relacin Extendido, MERE
Enhanced Entity-Relationship model, EER

Aportaciones de diversos autores al modelo


Entidad-Relacin bsico.
Permiten representar...

Relaciones exclusivas entre s


Jerarquas de Especializacin/Generalizacin
Agregacin de entidades

59

2.3. Extensiones del modelo


Relaciones Exclusivas

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

CONSUME y GASTA son exclusivas respecto del


tipo de entidad VEHICULO

60

2.3. Extensiones del modelo


Especializacin/Generalizacin (E/G)

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
61

2.3. Extensiones del modelo


E/G: Subtipo de un tipo de entidad

Agrupacin de instancias dentro de un tipo de


entidad, que debe representarse explcitamente
debido a su importancia para el diseo o aplicacin

Subtipos del tipo de entidad VEHCULO:

Subtipos del tipo de entidad EMPLEADO:

CAMIN
TURISMO
AUTOBS
CICLOMOTOR
SECRETARIO
GERENTE
COMERCIAL

El tipo de entidad que se especializa en otros se


llama supertipo ( VEHICULO, EMPLEADO )

62

2.3. Extensiones del modelo


E/G: Relacin Supertipo/Subtipo

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:
EMPLEADO
SECRETARIO

SECRETARIO

GERENTE

GERENTE

EMPLEADO

COMERCIAL

COMERCIAL

[SKS1998]

[MPM1999]
ES
SECRETARIO

GERENTE

COMERCIAL

63

2.3. Extensiones del modelo


E/G: Relacin Supertipo/Subtipo (ii)

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

CAMIN

TURISMO

EMPLEADO_HOSPITAL

CICLOMOTOR
MDICO

CELADOR ENFERMERO LIMPIADOR

64

2.3. Extensiones del modelo


E/G: Herencia de tipo
Un subtipo puede tener atributos propios (especficos)
y participar en relaciones por separado
Un subtipo hereda todos los atributos del supertipo,
y toda relacin en la que participa el supertipo
Un subtipo, con sus atributos y relaciones especficos, ms
los atributos y relaciones que hereda del supertipo, es un tipo
de entidad por derecho propio
numBastidor
precio

VEHCULO

(1,n)

FABRICA

N:1

[MPM1999]

(1,1)
CAMIN

numEjes

(1,1)

TURISMO

tonelaje numPuer

MOTOCICLETA

numPlazas

FABRICANTE

ID
LLEVA

cilindrada 1:1

(0,1)
SIDECAR

65

2.3. Extensiones del modelo


E/G: Especializacin

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

66

2.3. Extensiones del modelo


E/G: Especializacin (ii)

Varias especializaciones de un tipo de entidad,


con base en diferentes discriminantes

[MPM1999]

VEHCULO

motorS/N

VEHCULO_A_MOTOR

tipo

VEHCULO_SIN_MOTOR

gnero

DRAMA TERROR

CAMIN TURISMO

PELCULA

COMEDIA

MOTOCICLETA

color

BLANCO_Y_NEGRO

[EN2002]

COLOR

67

2.3. Extensiones del modelo


E/G: Especializacin (iii)

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
1:1
especficas)
SUPERVISA y SECCIN_HOSPITAL
Relacin SUPERVISA
CELADORentre CELADOR
SECCIN_HOSPITAL
[MPM1999]

(1,1)

(1,1)

68

3.3. Extensiones del modelo


E/G: Generalizacin
Proceso inverso de la especializacin
Suprimir diferencias entre varios tipos de entidad:
identificar atributos y relaciones comunes, y formar
un supertipo que los incluya
numBastidor
precio

CAMIN

numEjes
numBastidor
precio

numBastidor

fechaFab

VEHCULO

precio

tonelaje

CAMIN

fechaFab

TURISMO

fechaFab
numEjes
TURISMO

numPuer

tonelaje

numPuer

[EN2002]
69

2.3. Extensiones del modelo


E/G: Generalizacin vs. Especializacin

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
70

2.3. Extensiones del modelo


Restricciones sobre la E/G

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?

71

2.3. Extensiones del modelo


Restricciones sobre la E/G: Definicin

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

estadoLaboral=en_activo
EMPLEADO

[EN2002]
matriculado=true

ESTUDIANTE

72

2.3. Extensiones del modelo


Restricciones sobre la E/G: Definicin (ii)
Subtipos definidos por atributo
Todas las subclases definen la condicin de pertenencia en
trminos del mismo atributo
... es el discriminante de la especializacin
EMPLEADO_HOSPITAL

PERSONA

estadoLaboral
en_activo
EMPLEADO

en_paro

claseTrabajo
mdico

PARADO
MDICO

[EN2002]

celador

enfermero

CELADOR

limpiador

ENFERMERO

LIMPIADOR

[MPM1999]
73

2.3. Extensiones del modelo


Restricciones sobre la E/G: Definicin (iii)

Subtipos definidos por el usuario

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

TITULAR

AYUDANTE

[MPM1999]

ASOCIADO

74

2.3. Extensiones del modelo


Restricciones sobre la E/G:

Disyuncin/Solapamiento

Subtipos disjuntos si una instancia del


supertipo puede ser miembro de, como
mximo, uno de los subtipos
VEHCULO

VEHCULO

d
TURISMO

CAMIN

[EN2002]

TURISMO

CAMIN

[MPM1999]
75

2.3. Extensiones del modelo


Restricciones sobre la E/G:
Disyuncin/Solapamiento (ii)

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

[EN2002]

EMPLEADO

ESTUDIANTE

[MPM1999]
76

2.3. Extensiones del modelo


Restricciones sobre la E/G:

Completitud/Parcialidad

Especializacin total (completa) indica que


toda instancia del supertipo tambin debe ser
instancia de algn subtipo
ANIMAL

ANIMAL

d
MACHO

HEMBRA

HERMAFRODITA

[EN2002]

MACHO

HEMBRA

HERMAFRODITA

[MPM1999]
77

2.3. Extensiones del modelo


Restricciones sobre la E/G:
Completitud/Parcialidad (ii)

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]

[MPM1999]
d

LACTEO

FRUTA

VERDURA

LACTEO

FRUTA

VERDURA

78

2.3. Extensiones del modelo


E/G: Tipos de Especializacin

Las restricciones de disyuncin y completitud son


independientes entre s

Dan lugar a 4 tipos de especializacin:


Disjunta y Total
Disjunta y Parcial
Solapada y Total
Solapada y Parcial

Lo veremos con un ejemplo de una base de datos de


una Universidad

79

2.3. Extensiones del modelo


E/G: Especializacin Disjunta y Total
EMPLEADO

ESTUDIANTE
tipo

claseTrabajo

DOCENTE

ADMON_Y_SERV BECARIO

BECARIO

NO_BECARIO

Especializacin Disjunta y Parcial


DOCENTE
cuerpoDocente
AYUDANTE

TITULAR

CATEDRTICO

[MPM1999]
80

2.3. Extensiones del modelo


E/G: Especializacin Solapada y Total
PERSONA
ocupacin

EMPLEADO

[MPM1999]

ESTUDIANTE

Especializacin Solapada y Parcial


EMPLEADO
dedicacin
DOCENTE

INVESTIGADOR

81

2.3. Extensiones del modelo


E/G: Reglas de insercin y eliminacin

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

82

2.3. Extensiones del modelo


E/G: Reglas de insercin y eliminacin (ii)

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

No del supertipo ( lo hara el usuario, si fuese necesario)

83

2.3. Extensiones del modelo


E/G: Jerarquas y Retculas

Hasta ahora hemos estudiado jerarquas de


especializacin en las que se cumple la
restriccin:
Todo subtipo participa en slo una relacin
supertipo/subtipo

Un subtipo tiene un nico supertipo: es el concepto de


rbol

En una retcula de especializacin...


Un subtipo puede participar en varias
relaciones supertipo/subtipo
Un subtipo puede tener ms de un supertipo

84

E/G: Ejemplo de Retculas


nombre
PERSONA
[MPM1999]
dni
direccin
sexo

fechaIni DESEMPLEADO

jornada
salario

EMPLEADO

ocupacin

ESTUDIANTE

tipoEstudiante

dedicacin

(1, n) centro

DOCENTE ADMN_Y_SERV
puesto

cuerpoDocente

jornada
carrera

BECARIO

NO_BECARIO

beca

CATEDRTICO TITULAR NO_NUMERARIO


tipoCtedra

tipoPlaza

duracinContrato

85

2.3. Extensiones del modelo


E/G: Jerarquas y Retculas: Herencia mltiple

En las jerarquas de especializacin

Cada subtipo hereda atributos y relaciones...


de su (nico) supertipo directo
y de sus supertipos predecesores, hasta la raz

TITULAR hereda de DOCENTE, EMPLEADO y PERSONA

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

86

2.3. Extensiones del modelo


E/G: Jerarquas y Retculas: Herencia mltiple (ii)

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

87

2.3. Extensiones del modelo


E/G: Jerarquas y Retculas:

Inhibicin de la herencia

Algunos modelos de datos permiten indicar que


ciertos atributos del supertipo no deben ser
heredados por los subtipos
POLGONO

[MPM1999]

numVrtices
ancho
PENTGONO

TRINGULO

RECTNGULO

alto

CUADRADO

ancho y alto no deberan ser heredados por el


subtipo

lado

88

2.3. Extensiones del modelo


E/G: Jerarquas y Retculas:

Redefinicin de atributos heredados

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

Tiene sentido sobre todo para atributos derivados


ancho
rea

RECTNGULO

[MPM1999]

alto
rea

CUADRADO

lado

89

2.3. Extensiones del modelo


E/G: Jerarquas y Retculas:

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

[MPM1999]

alto
rea

CUADRADO

lado

... 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

90

2.3. Extensiones del modelo


Agregacin de tipos de entidad

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

91

2.3. Extensiones del modelo


Agregacin de tipos de entidad (ii): Ejemplo 1

Esquema en el MERE que almacena informacin sobre las


entrevistas que una ETT organiza entre solicitantes de empleo y
diferentes empresas

[EN2002]

nombre
EMPRESA
direccin

(1,n)
M

ENTREVISTA_A
fecha
nomContacto

(1,m)
N

telefContacto

nif

SOLICITANTE
nombre
telef

Algunas entrevistas dan lugar a ofertas de empleos y otras no


cmo modelamos esto?

92

2.3. Extensiones del modelo


Agregacin de tipos de entidad (iii): Ejemplo 1

Solucin 1: Relacin ternaria


EMPRESA

ENTREVISTA_A

SOLICITANTE

OFERTA_EMPLEO

[EN2002]

ERROR!
Toda entrevista da lugar a un empleo
ESO ES FALSO!
93

2.3. Extensiones del modelo


Agregacin de tipos de entidad (iv): Ejemplo 1

Solucin 2:
EMPRESA

[EN2002]
ENTREVISTA_A

SOLICITANTE

RESULTA_EN
OFERTA_EMPLEO

ERROR!
NO es posible establecer una
relacin entre varias relaciones,
ni entre relaciones y entidades

94

2.3. Extensiones del modelo


Agregacin de tipos de entidad (v): Ejemplo 1

Solucin 3:

EMPRESA

ENTREVISTA_A

SOLICITANTE

ENTREVISTA

Entidad
COMPUESTA o
AGREGADA

RESULTA_EN

[EN2002]

OFERTA_EMPLEO

OK!

OFERTA_EMPLEO tiene dependencia en existencia respecto


de RESULTA_EN

95

2.3. Extensiones del modelo


Agregacin de tipos de entidad (vi): Ejemplo 1
[EN2002]

Solucin 4: Relacin ternaria falsa


nombre

nif

EMPRESA

(0,n)

(0,m)

REALIZA

SOLICITANTE

(1,1)
fecha

ENTREVISTA

nomContacto

(0,1)

telefContacto

GENERA

(1,1)

OFERTA
EMPLEO
idOferta

Tipo de entidad dbil de otros dos


Qu significa que ENTREVISTA tenga fecha como clave parcial?

96

2.3. Extensiones del modelo


Agregacin de tipos de entidad (vii): Ejemplo 1

Solucin 5:

[EN2002]

nombre

nif

EMPRESA

(0,n)
REALIZA

fecha

(1,1)

(1,1)
ENTREVISTA

(0,1)
GENERA

SOLICITANTE

(0,m)
SUFRE

(1,1)

OFERTA
EMPLEO

idOferta

Tipo de entidad dbil de otros dos

97

2.3. Extensiones del modelo


Agregacin de tipos de entidad (viii): Ejemplo 2
Esquema en el MERE que almacena informacin acerca de
profesores y las asignaturas que stos imparten, as como los
diversos medios que utilizan para impartir cada asignatura
(pizarra, transparencias, etc.)
PROFESOR

EXPLICA

ASIGNATURA

UTILIZA
N

MEDIO

[EN2002]

ERROR! no es posible establecer una


relacin entre una relacin y una entidad
98

2.3. Extensiones del modelo


Agregacin de tipos de entidad (ix): Ejemplo 2

Solucin:

[EN2002]

PROFESOR

EXPLICA

ASIGNATURA

EXPLICACIN
M
Entidad COMPUESTA
o AGREGADA

UTILIZA
N
MEDIO

99

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
(1,1)
CHASIS

[MPM99]
(4,4)

(1,1)
MOTOR

RUEDA

AGREGACIN COLECCIN / MIEMBRO :


Un todo se obtiene por la unin de diversas partes del mismo tipo
y que desempean el mismo papel en la agregacin.
Se puede establecer orden entre las partes
BOSQUE

ARBOL

FLOTA

{NumBarco}

BARCO
100

También podría gustarte