t1 - modelo entidad-relación
DESCRIPTION
TRANSCRIPT
Tema – 1Modelo Entidad-Relación
Índice
1. Introducción.2. Entidad: llaves y representación gráfica.3. Relación: grado, representación gráfica,
cardinalidad, obligatoriedad de las entidades y diagrama de ocurrencias.
4. Atributos: de entidades y de relaciones.5. Tipos de relaciones.
2BASES DE DATOS - Daniel Santiago
1.1. Introducción
• El modelo Entidad-relación fue propuesto por Peter Chen en los 70 para la representación conceptual de los problemas.
• El esquema conceptual se puede utilizar con cualquier SGBD.
3BASES DE DATOS - Daniel Santiago
1.2. Entidad
• Objeto real o abstracto del cual se puede almacenar información en una BD.
• Características:– Tiene existencia propia.– Es distinguible del resto de entidades del sistema.– Las entidades de un mismo tipo están definidas en base a
un mismo conjunto de atributos.
• Ejemplo: Pedro Sánchez Crespo con DNI 73920582
4BASES DE DATOS - Daniel Santiago
1.2. Entidad
• Conjunto de entidades: agrupaciones de entidades con las mismas propiedades.
5BASES DE DATOS - Daniel Santiago
1.2. Entidad
• Actualmente se conoce como entidad a lo que antes se ha definido como conjunto de entidades.
• Ejemplo:– Entidad: PERSONA.– Ocurrencia de la entidad PERSONA: Pedro.
6BASES DE DATOS - Daniel Santiago
1.2. Entidad
• Tipos de entidades:– Fuerte: su existencia no depende de la existencia
de otra entidad.• Representación:
– Débil: su existencia depende de la existencia de una entidad fuerte.
• Representación:
EMPLEO
TASCATAREA LABORAL
7BASES DE DATOS - Daniel Santiago
1.3. Relación
• Representación de asociaciones entre entidades.
• Permite relacionar entre sí los datos.
8BASES DE DATOS - Daniel Santiago
1.3. Relación
• En una relación se asocia un elemento de una entidad con otro elemento de otra entidad.– No pueden aparecer relacionados dos veces los
mismos ejemplares.
• Representación:
PERSONA EMPRESAP-Eestá_trabajando trabaja_en
9BASES DE DATOS - Daniel Santiago
1.3. Relación
• Cardinalidad: indica el número de relaciones en las que una entidad puede aparecer.– Representación: (card. mínima, card. máxima)
• Card. Mínima: indica el número mínimo de asociaciones en las que aparecerá cada ejemplar de la entidad.
• Card. Máxima: indica el número máximo de relaciones en las que puede aparecer cada ejemplar de la entidad.
PERSONA EMPRESAP-Eestá_trabajando trabaja_en
(1,n) (1,1)
10BASES DE DATOS - Daniel Santiago
1.3. Relación
• Parejas de cardinalidades que podemos encontrarnos en una relación: – (0,1), (1,1), (0,n), (1,n), (m,n).
• Es conveniente acompañar la relación con las cardinalidades máximas (en mayúsculas) con las que intervienen les entidades relacionadas.
PERSONA EMPRESAP-Eestá_trabajando trabaja_en
(1,n) (1,1)
N:1
11BASES DE DATOS - Daniel Santiago
1.4. Atributos
• Describen propiedades de las entidades y las relaciones.
• Representación:
12BASES DE DATOS - Daniel Santiago
1.4. Atributos
• Tipos:– Compuesto:
– Múltiples: pueden tomar diversos valores para una misma entidad.
» » (OPCIONAL)
13BASES DE DATOS - Daniel Santiago
1.4. Atributos
• Las entidades (y sus instancias) tienen que ser distinguibles del resto.
• Identificador o llave: conjunto de uno o más atributos cuyos valores son únicos en cada instancia de la entidad.
14BASES DE DATOS - Daniel Santiago
1.4. Atributos
• Requisitos para ser identificador:– Tiene que de distinguir cada ejemplar de la entidad
o relación.– Todos los ejemplares de una entidad deben tener el
mismo identificador.– Un identificador puede estar formado por más de
un atributo.– Pueden haber varios identificador candidatos.
Escogeremos el de más importancia en el sistema. El resto pasan a ser identificadores alternativos.
15BASES DE DATOS - Daniel Santiago
1.4. Atributos
• Representación:– Identificador:
– Identificador alternativo:
TRABAJADOR
dni
TRABAJADOR
dni
nss
16BASES DE DATOS - Daniel Santiago
1.4. Atributos
• Las instancias de las relaciones también deben poder identificarse sin ambigüedad.
• Las relaciones se identifican por la concatenación de los atributos que identifican las entidades relacionadas.
• Las relaciones pueden tener sus propios atributos.
17BASES DE DATOS - Daniel Santiago
1.4. Atributos
• Ejemplo:– Un profesor examina un número de veces a cada
alumno al que da clase:
PROFESOR ALUMNEP-A(1,n)(1,1)
examen
nota
1:N
dni matricula
18BASES DE DATOS - Daniel Santiago
1.4. Atributos
• PROBLEMA: ¿qué pasa si queremos que cada profesor pueda examinar varias veces a cada alumno, con un examen y una nota? Con el esquema anterior no podríamos representar esta información.– SOLUCIÓN: relaciones ternarias.
19BASES DE DATOS - Daniel Santiago
1.5. Tipos de relaciones
• Existen los siguientes tipos de relaciones:– Relaciones binarias (vistas anteriormente).– Relaciones n-arias (ternarias, cuaternarias…).– Relaciones reflexivas (unarias).– Relaciones exclusivas.– Relaciones jerárquicas.
20BASES DE DATOS - Daniel Santiago
1.6. Relación ternaria
• Ejemplo:
• El atributo nota forma parte de la relación. Si se pone en la entidad Examen, sería independiente de las relaciones entre las tres entidades. Así, independientemente de los alumnos que se presenten a los exámenes y de los profesores que les califiquen, todos obtendrían la misma nota.
PROFESOR
ALUMNO
P-A-E
EXAMEN1:N:M
(1,1) (1,n)
(1,n)
nota
es_examinado_por evaluado_como
examina_a
examen
21BASES DE DATOS - Daniel Santiago
1.6. Relación ternaria
• Podemos transformar la relación ternaria anterior a 3 relaciones binarias:
PROFESOR
ALUMNO
EXAMEN(1,n)
(1,1)
es_convocado_por
realiza
es_realizado_por
examen
22BASES DE DATOS - Daniel Santiago
P-Econvoca
(1,n)
nota(1,n)
E-AP-A
es_examinado_por (1,n)
(1,n)
examina_a
1:N
N:M N:M
1.7. Relación reflexiva (unaria)
• En este tipo de relaciones se ve involucrada una única entidad.
TRABAJADOR T-T1:N
(0,1)
es_subordinado_de
(0,n)
es_jefe_de
23BASES DE DATOS - Daniel Santiago
1.8. Relación exclusiva
• Ejemplo:
• Los artículos son subministrados por los proveedores o por los fabricantes, pero un artículo no puede ser subministrado por un proveedor que no fabrica el artículo, de forma que si el fabricante puede subministrarlo, en ningún momento se solicitará este artículo a ningún proveedor.
ARTICULO
A-P
N:1
(1,n)
(1,n)
suministra
suministra
N:1
A-F FABRICANTE
PROVEEDORson_servidos
son_servidos
(0,1)
(0,1)
24BASES DE DATOS - Daniel Santiago
1.9. Relación jerárquica
• Una entidad ES_UN subtipo de otra entidad.• Entidad general: superentidad.• Entidad específica: subentidad.
– Hereda las propiedades y comportamiento de la superentidad.
– Cada subentidad debe tener sus propias propiedades y/o comportamientos y se debe distinguir del resto de entidades del problema.
25BASES DE DATOS - Daniel Santiago
1.9. Relación jerárquica
• Generalización: unificar entidades agrupándolas en una entidad más general.
• Especialización: dividir una entidad general en entidades más específicas.– Exclusiva o inclusiva.– Total o parcial.
26BASES DE DATOS - Daniel Santiago
1.9. Relación jerárquica
• Especialización exclusiva (sin solapamiento): una instancia del tipo de entidad más general sólo puede estar asociada a una sola instancia de los subtipos de entidad.
• Especialización inclusiva (con solapamiento): una instancia del tipo de entidad más general puede tener asociadas instancias de cualquiera de los subtipos.
• Especialización total: todas la entidades son de alguno de los subtipos especializados.
• Especialización parcial: puede haber alguna entidad que no pertenezca a ningún subtipo.
27BASES DE DATOS - Daniel Santiago
1.9. Relación jerárquica
PERSONA
HOMBRE MUJER
ES_UN sexo
(1,1)
(0,1) (0,1)
ENFERMEDAD
BACTERIANAVIRICA
ES_UN
(1,1)
(0,1) (0,1)
tipo
EMPRESA
ES_UN
PUBLICA PRIVADA
(1,1)
({0 o 1},1) ({0 o 1},1)
clase
administración empresa
PERSONA
ES_UN
TRABAJADOR ESTUDIANTE({0 o 1},1) ({0 o 1},1)
tipo
(1,1)
28BASES DE DATOS - Daniel Santiago
nss matricula
1.9. Relación jerárquica
• Ejemplo A: total sin solapamiento– No hay ninguna entidad Persona que no sea o bien
Hombre o bien Mujer, de forma exclusiva.– El atributo sexo tiene la función de clasificar las entidades
Persona.
• Ejemplo B: parcial sin solapamiento– Una Enfermedad podrá ser Vírica o Bacteriana, pero habrá
otras que no podrán ser clasificadas.– El atributo tipo tiene la función de clasificar las entidades
Enfermedad, pero puede estar vacío.
29BASES DE DATOS - Daniel Santiago
1.9. Relación jerárquica
• Ejemplo C: total con solapamiento– Habrá entidades de Empresa que podrán ser consideradas Pública y/o
Privada. Todas las entidades Empresa se podrán especializar.– Los subtipos incorporan atributos con los que se diferencian de
entidades de otros subtipos.
• Ejemplo D: parcial con solapamiento– Una entidad Persona puede ser del tipo Trabajador y/o Estudiante y
además pueden existir entidades Persona sin clasificar en ninguno de los dos subtipos.
– Los subtipos incorporan atributos con los que se diferencian de entidades de otros subtipos.
30BASES DE DATOS - Daniel Santiago
1.9. Relación jerárquica
• Cardinalidad:– La superentidad participa siempre con la cardinalidad (1,
1).– La cardinalidad máxima de las subentidades es siempre 1.– Para relaciones totales o parciales sin solapamiento, la
cardinalidad mínima de las subentidades será siempre 0.– Para relaciones totales o parciales con solapamiento, la
cardinalidad mínima de las subentidades será 0 o 1.
31BASES DE DATOS - Daniel Santiago