You are on page 1of 107

1

UNIDAD II Modelos de datos

2.1 Definicin de Modelo de Datos 2.2 El modelo Entidad Relacin 2.3 El modelo Entidad Relacin Extendido

2.1 Definicin de Modelo de datos

Un modelo de datos es un mecanismo de abstraccin que permite la representacin de una parcela del mundo real (universo del discurso o mini-mundo) cuyos datos nos interesa registrar. Un modelo de datos es un conjunto de conceptos que permiten describir, a distintos niveles de abstraccin, la estructura de una base de datos, a la cual denominamos esquema.

2.1 Definicin de Modelo de datos


En la arquitectura de una base de datos propuesta por ANSI suelen diferenciarse tres niveles de abstraccin:

Global: contiene una representacin del conjunto de los datos de una organizacin

Externo: representa slo una parte de los datos, se describen para atender las necesidades de uno o varios procesos o de un grupo de usuarios en particular Interno: describe las caractersticas de los datos tal como han de encontrarse almacenados fsicamente

2.1 Definicin de Modelo de datos

Segn el nivel del abstraccin de la arquitectura ANSI a tres niveles, en el que se encuentre la estructura descrita, el modelo que permite su descripcin ser un modelo externo, global o interno.

Existen, por tanto, en una base de datos tres clases de esquemas: el esquema global, los esquemas externos y el esquema interno.

2.1 Definicin de Modelo de datos


Modelos Globales o lgicos

2.1 Definicin de Modelo de datos


Diferencia entre modelo y esquema

2.1 Definicin de Modelo de datos

LOS MODELOS DE DATOS EN EL PROCESO DE DISEO DE UNA BASE DE DATOS

2.2 El 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. Addison-Wesley. (Cap. 5) [SKS 1998] Silberschatz, A;Korth, H; Sudarshan, S. Fundamentos de Bases de Datos. 3 edicin. Madrid: McGraw-Hill. (Cap. 2)

Introduccin
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


Muy extendido en los mtodos de diseo de bases de datos Soportado por herramientas software de diseo (CASE)

Gran

difusin

Introduccin

10

En el proceso de diseo...
Requisitos de datos

DISEO CONCEPTUAL

Esquema Conceptual

MER

11

Introduccin
Esquema conceptual Descripcin concisa de los requisitos de informacin de los usuarios
Descripciones
TIPOS

detalladas de

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

12

Conceptos bsicos del modelo ER

Entidad

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

Conceptos bsicos del modelo

13

ENTIDAD
Cosa

u objeto del mundo real con existencia propia y distinguible del resto con existencia...
fsica o real (una persona, un libro, un empleado) abstracta o conceptual (una asignatura, un viaje)

Objeto

Persona,

lugar, cosa, concepto o suceso, real o abstracto, de inters para la empresa (ANSI, 1977)

Conceptos bsicos del modelo


14

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

Conceptos bsicos del modelo TIPO DE ENTIDAD (entity set)


Define

15

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 CLIENTE PELICULA LOCAL VIDEOCLUB DIRECTOR ACTOR

Conceptos bsicos del modelo Instancia de un tipo de entidad


Tambin...

16

Ocurrencia Realizacin Ejemplar p2 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 ...

p3

titulo = Amores perros genero = Drama nacionalidad = Mjico aoestreno = 1999 ...

p4

Conceptos bsicos del modelo


17

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

Conceptos bsicos del modelo


18

Tipos de atributos
Simples

o Compuestos Almacenados o Derivados Monovalorados o Multivalorados Opcionales

Conceptos bsicos del modelo


19

Atributos Simples o Compuestos


Atributos
Pueden

compuestos

dividirse en otros con significado fechanacim direccion propio dia mes ao calle ciudad provincia codpostal

Valor

compuesto = concatenacin de valores de componentes

Atributos
No

simples

genero

divisibles. Atmicos

Conceptos bsicos del modelo


20

Atributos Almacenados o Derivados


Atributos
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

derivados

Atributos

fechanacim [de cada EMPLEADO] nacionalidad [de una PELICULA]

almacenados

Conceptos bsicos del modelo

21

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)

Conceptos bsicos del modelo Atributos Opcionales (nulos)


El

22

nulo (null value) es usado cuando...


desconoce el valor de un atributo para cierta entidad
El
No

Se

altura [de un EMPLEADO]

valor existe pero falta

telefono [de un EMPLEADO]

se sabe si el valor existe o no

La

entidad no tiene ningn valor aplicable para el atributo:


fechaalquiler [PELICULA slo en vdeo-venta (no alquiler)]

Conceptos bsicos del modelo


23

Notacin para atributos


[EN2002]
calle
fechanacim nombre nss

[MPM1999]
codpostal calle ciudad provincia codpostal fechanacim direccin (0,3) nombre telefono EMPLEADO altura
D (1,2)

ciudad

provincia

direccin EMPLEADO
(0,3) (0,1)

telefono altura

(1,2)

dni

edad

nacionalidad

nss

dni edad

nacionalidad

Conceptos bsicos del modelo


24

Atributos Clave (i)


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 dni EMPLEADO

[EN2002]

[MPM1999]

Conceptos bsicos del modelo


25

Atributos Clave (ii)


Una

clave puede estar formada por varios atributos clave compuesta


Combinacin

instancia

de valores distinta para cada

Una

(nombre, fechanacim) en el tipo de entidad EMPLEADO

clave compuesta debe ser mnima

Un

tipo de entidad puede tener ms de una clave claves candidatas


Claves o Identificadores Candidatos de EMPLEADO:
dni nss (nombre,

fechanacim)

Conceptos bsicos del modelo


26

Atributos Clave (iii)


Atributo
Clave

identificador principal (IP)

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
Claves

identificadores alternativos (IA)

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

Conceptos bsicos del modelo


27

Notacin para atributos clave


[EN2002]
calle fechanacim n-f ciudad provincia codpostal direccin EMPLEADO
(0,3) (0,1) (1,2)

[MPM1999]
calle ciudad provincia codpostal fechanacim direccin (0,3) nombre telefono EMPLEADO altura n-f nss
D (1,2)

telefono

altura

nombre

nss

IP

nacionalidad edad

dni

dni edad

nacionalidad

En el MER es obligatorio que todo tipo de entidad tenga un identificador (restriccin inherente al modelo)

Conceptos bsicos del modelo


28

DOMINIO (values set)

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

nombre NOMBRES
altura
... MEDIDAS ...

telefono TELEFONOS cadenas de hasta 9 caracteres numricos

No suele representarse, aunque una forma de hacerlo sera:

EMPLEADO telefono

[MPM1999]

altura

Conceptos bsicos del modelo Nombres de Rol (papel)


Todo

29

tipo de entidad que participa en un tipo de relacin juega un papel especfico en la relacin
DIRECTOR Es _dirigida HA_RODADO dirige PELICULA

Los

nombres de rol se deben usar, sobre todo, en los tipos de relacin reflexivos, para evitar ambigedad
original VERSION_DE versin PELICULA

Conceptos bsicos del modelo


30

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
Razn

Clases

de cardinalidad (o tipo de correspondencia) Razn de participacin

de restricciones estructurales:

Conceptos bsicos del modelo


31

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


Notacin
etiqueta

DIRECTOR

1
HA_RODADO

en la lnea que une entidad y relacin Ojo: da la sensacin de que se representa al revs

N
PELICULA

Conceptos bsicos del modelo


32

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 EMPLEADO encargado 1 SUPERVISA sucursal N LOCAL_VIDEOCLUB ACTOR personaje M

1
TRABAJA_EN 1 lugar trabajo

ACTUA_EN
N film PELICULA

Conceptos bsicos del modelo


33

Razn de Cardinalidad
Nmero

Notacin [MPM1999]

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

ACTOR
M:N ACTUA_EN

1:1

TRABAJA_EN

1:N

lugar trabajo

LOCAL_VIDEOCLUB

PELICULA

Conceptos bsicos del modelo


34

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 SUPERVISA sucursal

ACTOR

TRABAJA_EN

ACTUA_EN PELICULA

lugar trabajo

LOCAL_VIDEOCLUB

Conceptos bsicos del modelo


35

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
Participacin

de participacin:

existencia) Participacin parcial

total (dependencia en

Conceptos bsicos del modelo

36

Razn de Participacin (ii)


Notacin

[EN2002]

Lneas dobles o simples


DIRECTOR
1 ACTOR personaje M ACTUA_EN N film PELICULA

trabajador
1

EMPLEADO encargado 1

HA_ RODADO
N

TRABAJA_EN
1 lugar trabajo

SUPERVISA sucursal N
LOCAL_VIDEOCLUB

PELICULA

37

Conceptos bsicos del modelo


Cardinalidad de tipo de entidad (i)
Otra

forma de expresar las razones de cardinalidad y participacin


PERSONA
USA EDIFICIO PERSONA POSEE
e1 e2 p1 e1 e2

PERSONA USA
p1

EDIFICIO

POSEE

EDIFICIO

p2
e3 p3 e4

p2
e3 p3 e4

Cardinalidad de tipo de entidad (ii)


[EN2002]
Nmeros

Conceptos bsicos del modelo

38

Notacin

mnimo y mximo de instancias del tipo de relacin en las que puede intervenir una instancia del tipo de entidad Notacin
(min, max)

relacin

en la lnea que une entidad y


(1,n) USA POSEE (0,m) (1,1) EDIFICIO

PERSONA
(0,n)

Conceptos bsicos del modelo


39

Cardinalidad de tipo de entidad (iii)


1 TRABAJA_EN 1 EMPLEADO 1 SUPERVISA N LOCAL_VIDEOCLUB

[EN2002]
ACTOR N

ACTUA_EN M PELICULA

(1,1) TRABAJA_EN (1,1)

EMPLEADO (0,n) SUPERVISA

ACTOR

(1,n)
ACTUA_EN (0,m) PELICULA

(1,1)
LOCAL_VIDEOCLUB

Cardinalidad de tipo de entidad (iv)


[MPM1999]

Conceptos bsicos del modelo

Notacin

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)

relacin

en la lnea que une entidad y


(0,m)
(1,1) USA POSEE

PERSONA

(1,n) (0,n)

EDIFICIO

40

Conceptos bsicos del modelo


Cardinalidad de tipo de entidad (v)
Comparacin

41

de notaciones
PERSONA EDIFICIO POSEE
p1 p2 e1 e2 e3

[EN2002]
PERSONA

(0,n)

POSEE

(1,1)

EDIFICIO

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

[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

Conceptos bsicos del modelo Cardinalidad de tipo de entidad


Comparacin de notaciones (ii) [EN2002]
EMPLEADO 1
SUPERVISA

42

LOCAL VIDEOCLUB

1:N

[MPM1999]

EMPLEADO

(1,1)

SUPERVISA

LOCAL (0,n) VIDEOCLUB

[SKS1998]

EMPLEADO

SUPERVISA

LOCAL VIDEOCLUB

Conceptos bsicos del modelo Cardinalidad de tipo de entidad


Cardinalidad de tipos de entidad recursivos [EN2002]
superior (0,n) subalterno EMPLEADO (0,1) N 1
JEFE DE

43

continuacin (0,1) PELICULA

secuela (0,1)

SECUELA DE

1:1

[MPM1999]
versin (0,n) PELICULA original (0,1)
VERSIONA

N:1

Conceptos bsicos del modelo


Atributos de tipos de relacin (i)
[EN2002]
horas EMPLEADO 1 SUPERVISA N LOCAL_VIDEOCLUB papel salario (1,n) PELICULA fechainicio

44

1 TRABAJA_EN 1

[MPM1999]
ACTOR (0,m)

M:N
ACTUA_EN

Conceptos bsicos del modelo Atributos de tipos de relacin (ii)


Conceptualmente

45

relacin
Un

pertenecen a la

atributo de una M:N es propio de la relacin Un atributo de una 1:1 o 1:N se puede llevar horas EMPLEADO a uno de los tipos de entidad participantes
1 horas TRABAJA_EN 1

1
SUPERVISA N LOCAL_VIDEOCLUB fechainicio fechainicio

[EN2002]

horas

2.2. Conceptos bsicos del modelo


Tipo de Entidad Dbil Notacin [EN2002]
No

46

tiene atributos clave propios Una instancia se identifica por su relacin con una instancia de otro tipo de entidad
Tipo

de relacin identificador

Relaciona

un tipo de entidad dbil y un tipo de entidad regular (fuerte, dominante, padre, propietaria)

Clave

parcial (o discriminante)

Atributos

Clave

de la entidad dbil, que identifican de forma nica cada instancia, siempre que est relacionada con una instancia del tipo de entidad regular COPIA

= (clave_entidad_regular, clave_parcial)

2.2. Conceptos bsicos del modelo

Tipo de entidad dbil (ii) [EN2002]


nss

PACIENTE 1
ACUDE N VISITA_MEDICA N ASISTIDA POR 1 MEDICO

Tipo de Entidad Regular Tipo de Relacin Identificador diahora

PELICULA 1

titulo

TIENE N
COPIA numcopia

Clave parcial o Discriminante ncolegiado nombre

especialidad

Dependencia en existencia
47

48

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 1 dni

POSEE
N PERMISO CONDUCCION numlicencia tipo

PERMISO_CONDUCCIN no es dbil: depende en existencia de EMPLEADO, pero tiene clave primaria propia

49

Conceptos bsicos del modelo 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)


un tipo de entidad dbil y otro regular

Relaciona

Clases
En

de dependencia:

existencia En identificacin

50

Conceptos bsicos del modelo


Tipo de entidad dbil (v)
Dependencia
Si

[MPM1999]

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

en existencia (entre entidades)

Dependencia
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

en identificacin

Conceptos bsicos del modelo


Tipo de entidad dbil (vi)
dni
EMPLEADO E POSEE Tipo de Relacin Dbil 1:N

51

[MPM1999]
PELICULA ID TIENE titulo

1:N numlicencia tipo

numcopia
PERMISO CONDUCCION

COPIA
idcopia

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

COPIA es dbil, pues depende en existencia de PELICULA, y tambin depende en identificacin

Conceptos bsicos del modelo Tipo de entidad dbil (vii)


Comparacin de conceptos y notacin [EN2002]
CLIENTE 1 POSEE N PRESTAMO numprestamo dni

52

[MPM1999]
CLIENTE
(1,1) E POSEE (0,n) PRESTAMO numprestamo 1:N dni

Dependencia en existencia

Conceptos bsicos del modelo Tipo de entidad dbil (viii)


53

Comparacin de conceptos y notacin (ii) [EN2002]


PRESTAMO 1 TIENE N PAGO numpago 1:1 numprestamo

[MPM1999]
PRESTAMO (1,1) ID TIENE (0,n) PAGO numprestamo

numpago idpago

Dependencia en identificacin

Entidad Dbil de otra entidad dbil

Conceptos bsicos del modelo


54

Tipo de entidad dbil (ix) Comparacin de conceptos y notacin (iii) [EN2002]


ACTOR M ACTUA_EN N PELICULA titulo nombre

[MPM1999]
ACTOR
(0,m) ACTUA_EN (1,n) PELICULA M:N titulo nombre

Participacin total

Conceptos bsicos del modelo


Tipos de relacin con grado superior a dos [EN2002]
CLIENTE

55

[MPM1999]
CLIENTE

(0,n)
ALQUILA

(0,1)

(0,1)
CINTA VIDEO fecha ALQUILA

(0,n)

fecha (0,m)
LOCAL VIDEOCLUB

(0,1)
LOCAL VIDEOCLUB

CINTA VIDEO

Cardinalidad de los tipos de entidad

56

Tipos de relacin con grado superior a dos (ii)

Conceptos bsicos del modelo

Equivalencia ternaria varias binarias


[EN2002]
(0,n)
CLIENTE CLIENTE
fecha
ALQUILA

(0,n)
ALQUILA

(0,1)

(1,m)
CINTA VIDEO
ALQUILA_EN

(0,1)
CINTA VIDEO

fecha

(0,m)
LOCAL VIDEOCLUB

(1,n)
LOCAL VIDEOCLUB

(1,1) (1,n)
CONTIENE

Tipos de relacin con grado superior a dos (iii) [EN2002]


PROVEEDOR cantidad idprov codpr PROVEEDOR

Conceptos bsicos del modelo

57

(1,n) (1,m)
PROVEE

PUEDE SUMINISTRAR

(1,n)
SUMINISTRA

(0,m)
PRODUCTO

(1,m)
PRODUCTO

fecha

(1,p)
TIENDA nombre

(1,n)
TIENDA

(0,n)
VENDE

(1,m)

Prdida de semntica...

Tipos de relacin con grado superior a dos (iv)


Solucin

Conceptos bsicos del modelo

58

tpica: coexistencia [EN2002] ternaria/binarias


idprov
PROVEEDOR

(1,n)

PUEDE SUMINISTRAR

(1,m)
PROVEE

(1,n)
SUMINISTRA

(0,m)
cantidad fecha

(1,m)
PRODUCTO

codpr

(1,n)
TIENDA

(1,p)

(0,n)
VENDE

(1,m)

nombre

Tipos de relacin con grado superior a dos (v) solucin: relacin ternaria como entidad dbil (Entidad Asociativa) [EN2002] cantidad fecha
(1,1) (1,n)
PROVEEDOR idprov nombre
REALIZA

Conceptos bsicos del modelo

59

Otra

SUMINISTRO

(1,1)

CONTIENE

(0,n)
PRODUCTO codpr

(1,1)
RECIBE

(1,n)
TIENDA

Tipos de relacin con grado superior a dos (vi)


Relaciones
idemp EMPRESA

Conceptos bsicos del modelo

60

ternarias falsas
dni

[EN2002]

(0,n)
num

REALIZA

(0,m)

CANDIDATO

(1,1)
ENTREVISTA

(0,1)

fecha

GENERA

(1,1)

OFERTA EMPLEO idoferta

Tipo de entidad dbil de ms de un tipo de entidad

Conceptos adicionales del modelo


OTRAS RESTRICCIONES SOBRE INTERRELACIONES

61

Restriccin de Exclusividad
Imparte

(1, 1)
PROFESOR (0, n) Recibe

(0, n)
CURSO (0, n)

Conceptos adicionales del modelo


OTRAS RESTRICCIONES SOBRE INTERRELACIONES

62

Restriccin de Exclusividad
Imparte (1, 1)

(1, n)

(0, n)

PROFESOR

CURSO
(0, n) Recibe (0, n)

Conceptos adicionales del modelo


OTRAS RESTRICCIONES SOBRE INTERRELACIONES

63

Restriccin de Exclusividad
(0, 1) Percibe (0, 1)

BECA

PROFESOR

(1, n)

Contratado
(1, n)

(0, n)

PROYECTO

Conceptos adicionales del modelo


OTRAS RESTRICCIONES SOBRE INTERRELACIONES

64

Restriccin de Exclusin
Imparte (1, 1)

(1, n)

(0, n)
{exclusin}

PROFESOR

CURSO
(0, n)

Recibe (0, n)

Conceptos adicionales del modelo


OTRAS RESTRICCIONES SOBRE INTERRELACIONES

65

Restriccin de Inclusividad
(1, 1) Imparte

(1, n)

(0, n)
(1, n)

PROFESOR

CURSO
(0, n) Recibe

(0, n)

Conceptos adicionales del modelo


OTRAS RESTRICCIONES SOBRE INTERRELACIONES

66

Restriccin de Inclusin
(1, 1) Imparte

(1, n)

(0, n)
{inclusin}

PROFESOR

CURSO
(0, n)

Recibe (0, n)

Conceptos adicionales del modelo


OTRAS RESTRICCIONES SOBRE INTERRELACIONES

67

La dimensin temporal

F_Pres

EJEMPLAR
(0, 5) N :1 Presta

SOCIO
(0, 1)

Conceptos adicionales del modelo


OTRAS RESTRICCIONES SOBRE INTERRELACIONES

68

La dimensin temporal

F_Pres

F_Dev
N: M Imparte

EJEMPLAR
(1, n)

SOCIO
(0, n)

69

2.3 El 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

Extensiones del modelo

70

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

Extensiones del modelo


71

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:


CAMIN TURISMO AUTOBS CICLOMOTOR SECRETARIO GERENTE COMERCIAL

Subtipos del tipo de entidad EMPLEADO:


El tipo de entidad que se especializa en otros se llama supertipo ( VEHICULO, EMPLEADO )

Extensiones del modelo


72

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

EMPLEADO

[EN2002]

GERENTE

COMERCIAL

SECRETARIO

GERENTE

COMERCIAL

EMPLEADO

[SKS1998]

[MPM1999]
SECRETARIO

ES

GERENTE

COMERCIAL

Extensiones del modelo


73

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
EMPLEADO_HOSPITAL

CAMIN

TURISMO

CICLOMOTOR

MDICO

CELADOR ENFERMERO LIMPIADOR

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

(1,1)

FABRICANTE

N:1 (1,1) ID
LLEVA

[MPM1999]
CAMIN TURISMO MOTOCICLETA

(0,1)
SIDECAR

numEjes

tonelaje numPuer

numPlazas

cilindrada 1:1

74

Extensiones del modelo


75

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 especficas) Relacin SUPERVISA entre CELADOR y SECCIN_HOSPITAL
1:1

[MPM1999]

CELADOR

(1,1)

SUPERVISA

(1,1)

SECCIN_HOSPITAL

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

fechaFab

numBastidor

VEHCULO

precio

fechaFab

numEjes

tonelaje fechaFab

G
numPuer

CAMIN

TURISMO

numBastidor
precio

numEjes
TURISMO

tonelaje

numPuer

[EN2002]
76

Extensiones del modelo


77

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

Extensiones del modelo


78

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?

Extensiones del modelo


Restricciones sobre la E/G: Definicin

79

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

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
PERSONA
EMPLEADO_HOSPITAL

estadoLaboral en_activo
EMPLEADO

claseTrabajo mdico
MDICO

en_paro
PARADO

celador

enfermero

limpiador
LIMPIADOR

CELADOR

ENFERMERO

[EN2002]

[MPM1999]
80

Extensiones del modelo


81

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

[MPM1999]

TITULAR

AYUDANTE

ASOCIADO

Extensiones del modelo


82

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 TURISMO CAMIN

[EN2002]

[MPM1999]

Extensiones del modelo


83

Restricciones sobre la E/G:

Disyuncin/Solapamiento

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]

Extensiones del modelo


84

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 MACHO HEMBRA HERMAFRODITA

[EN2002]

[MPM1999]

Extensiones del modelo


85

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]
d
LACTEO FRUTA VERDURA LACTEO FRUTA

[MPM1999]
VERDURA

Extensiones del modelo E/G: Tipos de Especializacin

86

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

Extensiones del modelo


E/G: Especializacin Disjunta y Total
EMPLEADO claseTrabajo ESTUDIANTE tipo

87

DOCENTE

ADMON_Y_SERV BECARIO

BECARIO

NO_BECARIO

Especializacin Disjunta y Parcial


DOCENTE
cuerpoDocente AYUDANTE

TITULAR

CATEDRTICO

[MPM1999]

Extensiones del modelo


E/G: Especializacin Solapada y Total
PERSONA ocupacin

88

EMPLEADO

ESTUDIANTE

[MPM1999]

Especializacin Solapada y Parcial


EMPLEADO dedicacin DOCENTE INVESTIGADOR

Extensiones del modelo


89

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

Extensiones del modelo


90

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)

Extensiones del modelo


91

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

E/G: Ejemplo de Retculas


[MPM1999]
nombre dni
direccin sexo PERSONA ocupacin

fechaIni DESEMPLEADO

jornada salario

EMPLEADO

ESTUDIANTE

jornada carrera tipoEstudiante

dedicacin

(1, n) centro cuerpoDocente

DOCENTE ADMN_Y_SERV
puesto

BECARIO
beca

NO_BECARIO

CATEDRTICO TITULAR NO_NUMERARIO


tipoCtedra tipoPlaza duracinContrato

92

Extensiones del modelo


93

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

2.3. Extensiones del modelo


94

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

2.3. Extensiones del modelo


95

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 numVrtices ancho PENTGONO TRINGULO RECTNGULO alto

[MPM1999]

CUADRADO

lado

ancho y alto no deberan ser heredados por el subtipo

2.3. Extensiones del modelo


96

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

alto rea

[MPM1999]
lado

CUADRADO

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

alto rea

[MPM1999]
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
97

Extensiones del modelo


98

Categoras y categorizacin

Categorizacin: Proceso por el que varias clases de naturaleza distintase agrupan en una nueva clase. La clase resultante de la categorizacin es la categora. Diferencias con la generalizacin: No todas las ocurrencias de las clases tienen que pertenecera la categora. Herencia selectiva de atributos.

Extensiones del modelo


99

Categoras y categorizacin

Extensiones del modelo


100

Categoras y categorizacin

Extensiones del modelo


101

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

Extensiones del modelo


Agregacin de tipos de entidad (ii): Ejemplo 1

102

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

nif

SOLICITANTE

telefContacto

nombre
telef

nomContacto

Algunas entrevistas dan lugar a ofertas de empleos y otras no cmo modelamos esto?

Extensiones del modelo


103

Agregacin de tipos de entidad (iii): Ejemplo 1

Solucin 1: Relacin ternaria


EMPRESA ENTREVISTA_A OFERTA_EMPLEO SOLICITANTE

[EN2002]

ERROR! Toda entrevista da lugar a un empleo

ESO ES FALSO!

Extensiones del modelo


104

Agregacin de tipos de entidad (iv): Ejemplo 1

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

Extensiones del modelo


105

Agregacin de tipos de entidad (v): Ejemplo 1

Solucin 3:

EMPRESA
ENTREVISTA

ENTREVISTA_A

SOLICITANTE

Entidad COMPUESTA o AGREGADA

RESULTA_EN

[EN2002]

OFERTA_EMPLEO

OK!

OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN

Extensiones del modelo


106

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

Solucin 4: Relacin ternaria falsa


nombre
EMPRESA nif

(0,n)

REALIZA

(0,m)

SOLICITANTE

(1,1)
fecha ENTREVISTA

(0,1)

GENERA

(1,1)

OFERTA EMPLEO idOferta

nomContacto

telefContacto

Tipo de entidad dbil de otros dos Qu significa que ENTREVISTA tenga fecha como clave parcial?

Extensiones del modelo


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

You might also like