modelo entidad-relación · conocer los conceptos y notación del modelo conceptual de datos...

39
1 Objetivos: Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en el modelo entidad-relación extendido. Contenidos: 1. Introducción e historia del modelo 2. Conceptos básicos del modelo 3. Extensiones del modelo Diseño de Bases de Datos Modelo Entidad-Relación

Upload: others

Post on 07-Jul-2020

18 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

1

Objetivos: Conocer los conceptos y notación del modelo

conceptual de datos entidad-relación extendido. Comprender los significados del concepto de

“nulo” en el modelo entidad-relación extendido.

Contenidos:1. Introducción e historia del modelo

2. Conceptos básicos del modelo

3. Extensiones del modelo

Diseño de Bases de Datos

Modelo Entidad-Relación

Page 2: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

2

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 difusión Muy extendido en los métodos de diseño de bases de

datos Soportado por herramientas software de diseño (CASE)

2.1. Introducción e historia del modelo Entidad-Relación

Page 3: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

3

En el proceso de diseño...

DISEÑO CONCEPTUAL

Requisitos de datos

EsquemaConceptual MER

2.1. Introducción e historia del modelo Entidad-Relación

Page 4: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

4

Descripción concisa de los requisitos de información de los usuarios Descripciones detalladas de

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

Sin detalles de implementación Más fácil de entender Comunicación con el usuario no técnico

Esquema conceptual

2.1. Introducción e historia del modelo Entidad-Relación

Page 5: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

5

2.2. Conceptos básicos del modelo

Entidad Atributo Dominio Relación

Page 6: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

6

ENTIDAD

Cosa u objeto del mundo real con existenciapropia y distinguible del resto

Objeto con existencia... física 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 interés para la empresa” (ANSI, 1977)

2.2. Conceptos básicos del modelo

Page 7: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

7

ATRIBUTO Propiedad o característica de una entidad Una entidad particular es descrita por los valores de

sus atributos:titulo = El alquimista impacientegenero = Thrillernacionalidad = Españaaniooestreno = 2002

Película

...

nss = 1122334455dni = 87654321

nombre = Cristina Aliaga Gilnacionalidad = España

Empleado

...

2.2. Conceptos básicos del modelo

Page 8: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

8

TIPO DE ENTIDAD

Define un conjunto de entidades que poseen los mismos atributosPELICULAS: titulo, genero, nacionalidad, añoestreno,numcopiasEMPLEADOS: dni, nss, nombre, fechanacim, direccion, telefono,

altura, nacionalidad, edadNotación

EMPLEADOS

LOCALESVIDEOCLUB

PELICULAS DIRECTORES

ACTORESCLIENTES

2.2. Conceptos básicos del modelo

Page 9: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

9

Instancia de un tipo de entidad

También... Ocurrencia Realización Ejemplar Entidad concreta

o individual

PELICULAS

titulo = El señor de los anillosgenero = Fantasíanacionalidad = EEUUañoestreno = 2001

p2

...

titulo = Ameliegenero = Comedianacionalidad = Franciaañoestreno = 2001

p4

...

titulo = Amores perrosgenero = Dramanacionalidad = Méjicoañoestreno = 1999

p3

...

2.2. Conceptos básicos del modelo

Page 10: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

10

Intensión y Extensión

Un tipo de entidad describe el esquema o intensión para un conjunto de entidades que poseen la misma estructuraEMPLEADO: dni, nss, nombre, dirección, telefono, altura, fechanacim,

nacionalidad, edad Las instancias del tipo de entidad se agrupan en un conjunto

de entidades o extensión

e1 (87654321, 1122334455, “Cristina Aliaga Gil”, “Libertad, 2. Yecla. Murcia. 30510”, 968100200, 1’60, 28/07/1979, España, 23)

e2 (12345678, 6677889900, “Antonio Gil Sánchez”, “Paz, 5. Murcia. Murcia.30012”, 968111222, 1’76, 14/04/1944, España, 58)

e3 (11223344, 1234567890, “Julia Sauce”, “Justicia, 20. Yecla. Murcia. 30510”, 968000222, 1’59, 23/05/1947, España, 55)

...

2.2. Conceptos básicos del modelo

Page 11: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

11

Tipos de atributos

Simples o Compuestos Almacenados o Derivados Monovalorados o Multivalorados Opcionales

2.2. Conceptos básicos del modelo

Page 12: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

12

Atributos Simples o Compuestos

Atributos compuestos Pueden dividirse en otros con significado propio

Valor compuesto = concatenación de valores de componentes

Atributos simples No divisibles. Atómicos

fechanacimdia mes año

direccioncalle ciudad provincia codpostal

genero

2.2. Conceptos básicos del modelo

Page 13: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

13

Atributos Derivados

Atributos derivados Valor calculado a partir de otra información ya

existente (atributos, entidades relacionadas) Son información redundante...

edad [de EMPLEADO], cálculo a partir de fechanacim atributo derivado del valor de otro atributo

numcopias [de una PELICULA], cuenta del número de entidades COPIA relacionadas con cada película concreta

atributo derivado de entidades relacionadas

2.2. Conceptos básicos del modelo

Page 14: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

14

Atributos Monovalorados o Multivalorados

Atributos monovalorados (monovaluados) sólo un valor para cada entidad

fechanacim [de un EMPLEADO particular]

añoestreno [de cada PELICULA concreta]

Atributos multivalorados (multivaluados) más de un valor para la misma entidad

nacionalidad [ PELICULA coproducida por varios países ]

telefono [ EMPLEADO con varios teléfonos de contacto]

pueden tener límites superior e inferiordel número de valores por entidad

nacionalidad (1-2)telefono (0-3)

2.2. Conceptos básicos del modelo

Page 15: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

15

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 ningún valor aplicable para el atributo:

fechaalquiler [PELICULA sólo en vídeo-venta (no alquiler)]

2.2. Conceptos básicos del modelo

Page 16: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

16

Notación para atributos

fechanacimdirección

telefono

calle provinciaciudadcodpostal

dni edad

altura(0,3)

Dnss

nombre

nacionalidad

(1,2)

EMPLEADO(0,3)

dirección

(1,2)

(0,1)EMPLEADOnombre

fechanacim telefono

calleprovinciaciudad

codpostal

edadnss

dni

altura

nacionalidad

2.2. Conceptos básicos del modelo

Page 17: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

17

Atributos Clave

Atributo con valor distinto para cada instancia de un tipo de entidaddni en EMPLEADO

Una clave identifica de forma única cada entidad concreta atributo identificador

Notación EMPLEADO EMPLEADO

dnidni

2.2. Conceptos básicos del modelo

Page 18: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

18

Atributos Clave (ii) Una clave puede estar formada por

varios atributos clave compuesta Combinación de valores distinta para cada instancia

(nombre, fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser mínima

Un tipo de entidad puede tener más de una clave claves candidatasClaves o Identificadores Candidatos de EMPLEADO: dni nss (nombre, fechanacim)

2.2. Conceptos básicos del modelo

Page 19: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

19

Atributos Clave (iii)

Atributo identificador principal (IP) Clave Principal Elegido (por el diseñador) de entre los identificadores

candidatos (IC), para ser el medio principal de identificación de las instancias del tipo de entidad

dni en EMPLEADO Atributos identificadores alternativos (IA)

Claves Alternativas El resto de IC’s nss y (nombre, fechanacim) en EMPLEADO

2.2. Conceptos básicos del modelo

Page 20: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

20

Notación para atributos clave[EN2002] [MPM1999]

En el MER es obligatorio que todo tipo de entidad tenga un identificador

nombre

fechanacim

EMPLEADO

direccióntelefono

calle provinciaciudadcodpostal

dni edad

altura(0,3)

Dnss nacionalidad

(1,2)n-f

(0,3)

(1,2)(0,1)

EMPLEADO

nombre

fechanacim telefono

calleprovinciaciudad

codpostal

edadnss

dni

altura

nacionalidad

n-f

dirección

IP

2.2. Conceptos básicos del modelo

Page 21: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

21

DOMINIO Conjunto de valores

Cada atributo simple está asociado a un dominio, que especifica sus valores válidos

Atributo Descripción Dominio

nombre cadenas de hasta 30 caracteres alfabéticos

telefono cadenas de hasta 9 caracteres numéricos

altura números reales entre 0 y 2’5 (metros)... ...

2.2. Conceptos básicos del modelo

Page 22: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

22

RELACIÓN También “interrelación” Asociación, vínculo o correspondencia

entre instancias de entidades relacionadas de alguna manera en el “mundo real” el director “Alejandro Amenábar” ha rodado la película

“Mar adentro” el empleado 87654321 trabaja en el local de videoclub

“principal” la película “El imperio contraataca” es una continuación de

la película “La guerra de las galaxias”

2.2. Conceptos básicos del modelo

Page 23: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

23

DIRECTOR HA_RODADO PELICULA

J. Médem

C. Saura

F. Trueba

S. Segura

A. Amenábar

Vacas

Tesis

Belle Epoque

Torrente

Tierra

Abre los ojos

Los otros

Tipo de Relación: conjunto de instancias

Tipo de Entidad: conjunto de instancias

Instancia del tipo de

relación

Page 24: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

24

TIPO DE RELACIÓN

Estructura genérica o abstracción delconjunto de relaciones existentes entredos o más tipos de entidadun DIRECTOR ha rodado PELICULA’s

Notación

DIRECTOR PELICULAHA_RODADO

2.2. Conceptos básicos del modelo

Page 25: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

25

Relaciones entre entidadesRelaciones entre entidades Una relación binaria es una correspondencia que se

establece entre dos entidades. Las relaciones se representan gráficamente por rombos y se les asigna un nombre significativo.

Page 26: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

26

Clases de relacionesClases de relacionesClase 1 a NClase 1 a N

Una relación de clase de 1 a N o 1:N o de uno a muchos se puede ver en la siguiente figura, en donde se expresa que cada empleado trabaja en una única sección, o que en cada sección trabajan varios empleados.

Se lee de la siguiente manera: 1 empleado trabaja en 1 sección y en 1 sección trabajan N empleados

Page 27: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

27

Clase 1 a 1Clase 1 a 1

Una relación de clase de 1 a 1 se puede ver en la siguiente figura, en donde se expresa que cada sección tiene un único empleado (jefe) a cargo.

Page 28: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

28

Clase N a NClase N a N Una relación de clase de N a N se puede ver en la

siguiente figura, en donde se expresa que cada empleado puede estar asignado en varios secciones a la vez y que cada proyecto esta formado por varios empleados.

Page 29: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

29

Clase c a NClase c a N Se puede colocar una constante numérica en vez de

la “N” cuando se desee expresar que hay ciertas restricciones de cardinalidad conocidas de antemano. Por ejemplo, si sabemos que un empleado no puede trabajar en mas de 3 secciones a la vez.

Page 30: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

30

Relaciones totalesRelaciones totales Una restricción muy común e importante en el modelado

de casos prácticos impone que todas las entidades de un conjunto de entidades E aparezcan obligatoriamente en un conjunto de relaciones R. En estos casos se dice que la relación R es total en E. Cuando una relación no es total se dice que es parcial.

Un empleado trabaja en una sección, no puede haber empleados que no estén asignados a alguna sección.

Page 31: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

31

Relaciones parcialesRelaciones parciales El 0 indica que un cliente puede o no poseer tarjeta.

Puede haber clientes que no tengan tarjeta.

Page 32: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

32

Atributos de relacionesAtributos de relaciones En muchos casos prácticos se tienen atributos que no

dependen de una única entidad sino de la relación existente entre conjuntos de entidades.

Page 33: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

33

Relación recursiva Relación recursiva (autorrelación)(autorrelación) Una relación recursiva es una relación binaria que

conecta una entidad consigo misma. Para distinguir entre los dos papeles de la entidad en la relación, se asocian dos rótulos con la entidad. En el ejemplo los dos rótulos son Mandar y Es mandado.

Page 34: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

34

Relación de grado mayor a 2Relación de grado mayor a 2

Son relaciones que conectan mas de dos entidades. La relación DICTA es una relación ternaria que une

las entidades INSTRUCTOR, SEMESTRE y CURSOS.

Page 35: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

35

Tipos de entidadesTipos de entidadesLas entidades pueden ser de dos tipos: Entidad fuerte: aquella sobre la que se puede

definir la clave primaria dentro de sus propios atributos.

Entidad débil: aquellas que no puede utilizar sus propios atributos como clave, al estar asociada a otra entidad.

Page 36: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

36

AgregacionesAgregaciones Un banco trabaja con clientes que pueden tener

varias cuentas corrientes. A pedido de los clientes y bajo ciertos requisitos, el banco les otorga tarjetas magnéticas para ser usadas en sus cajeros automáticos. Una primera aproximación del MER sería la siguiente:

En este esquema establece que se emite una tarjeta por cada cuenta que tenga cada cliente

Page 37: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

37

AgregacionesAgregaciones A tales efectos se debería considerar a las parejas (cliente,

cuenta) como un conjunto de entidades que se vinculan con las entidades del conjunto de tarjetas. Para ello se encierra a los conjuntos Clientes, Cuentas y la relación entre ellos, en un nuevo rectángulo que se va a comportar como un nuevo conjunto de entidades. A esto se lo denomina Agregación. Los elementos de esta agregación se relacionan con las tarjetas.

Page 38: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

38

EjemplosEjemplos Se desea modelar una base de datos de una empresa de insumos de

computación, mediante MER. La realidad de la empresa es la siguiente:

La empresa tiene clientes, cuyos datos son su número de cliente, nombre dirección y teléfonos. La dirección se forma de un domicilio, ciudad y código postal.

Los clientes hacen pedidos de compra. Cada pedido de un cliente hace referencia a un conjunto de artículos en stock. Para cada artículo que hay en un pedido se indica la cantidad unitaria pedida. Los pedidos tienen un número identificatorio y una fecha de envío y una tasa de envío. Todos los pedidos tienen un monto total.

Los artículos se identifican por un número y el código del fabricante, es decir, un mismo artículo puede ser producido por varios fabricantes. De cada artículo se tiene su descripción y su precio unitarios. Este precio depende el artículo en sí y del fabricante del mismo.

Los fabricantes tienen un código y un nombre.

Page 39: Modelo Entidad-Relación · Conocer los conceptos y notación del modelo conceptual de datos entidad-relación extendido. Comprender los significados del concepto de “nulo” en

39