modelo entidad relac

41
1 Diseño de Bases de Datos Modelo Entidad-Relación INTEGRANTES: Jonathan Marmolejo Vera Cristhian Alava Troya Jonathan Navarrete Cedeño

Upload: alejandro-alava

Post on 02-Jul-2015

894 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: MODELO ENTIDAD RELAC

1

Diseño de Bases de Datos

Modelo Entidad-Relación

INTEGRANTES:Jonathan Marmolejo VeraCristhian Alava TroyaJonathan Navarrete Cedeño

Page 2: MODELO ENTIDAD RELAC

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)

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

Page 3: MODELO ENTIDAD RELAC

3

En el proceso de diseño...

DISEÑO CONCEPTUAL

DISEÑO CONCEPTUAL

Requisitos de datos

EsquemaConceptual MER

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

Page 4: MODELO ENTIDAD RELAC

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

Introducción e historia del modelo Entidad Relación

Page 5: MODELO ENTIDAD RELAC

5

Conceptos básicos del modelo

Entidad ( entity ) Atributo ( attribute ) Dominio ( values set ) Relación ( relationship )

Page 6: MODELO ENTIDAD RELAC

6

ENTIDAD Cosa u objeto del mundo real con

existencia propia 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)

Conceptos básicos del modelo

Page 7: MODELO ENTIDAD RELAC

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ñaañoestreno = 2002

p1

...

nss = 1122334455dni = 87654321

nombre = Cristina Aliaga Gilnacionalidad = España

e1

...

Conceptos básicos del modelo

Page 8: MODELO ENTIDAD RELAC

8

TIPO DE ENTIDAD (entity set)

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

altura, nacionalidad, edad Notación

EMPLEADO

LOCALVIDEOCLUB

PELICULA DIRECTOR

ACTORCLIENTE

Conceptos básicos del modelo

Page 9: MODELO ENTIDAD RELAC

9

Instancia de un tipo de entidad

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

o individual

PELICULA

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

...

Conceptos básicos del modelo

Page 10: MODELO ENTIDAD RELAC

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óne1 (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) ...

Conceptos básicos del modelo

Page 11: MODELO ENTIDAD RELAC

11

Tipos de atributos

Simples o Compuestos Almacenados o Derivados Monovalorados o Multivalorados Opcionales

Conceptos básicos del modelo

Page 12: MODELO ENTIDAD RELAC

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

fechanacim

dia mes año

direccion

calle ciudad provincia codpostal

genero

Conceptos básicos del modelo

Page 13: MODELO ENTIDAD RELAC

13

Atributos Almacenados o 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

Atributos almacenadosfechanacim [de cada EMPLEADO]nacionalidad [de una PELICULA]

Conceptos básicos del modelo

Page 14: MODELO ENTIDAD RELAC

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 inferior

del número de valores por entidadnacionalidad (1-2)telefono (0-3)

Conceptos básicos del modelo

Page 15: MODELO ENTIDAD RELAC

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 faltaaltura [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)]

Conceptos básicos del modelo

Page 16: MODELO ENTIDAD RELAC

16

Notación para atributos[EN2002] [MPM1999]

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

Conceptos básicos del modelo

Page 17: MODELO ENTIDAD RELAC

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ónEMPLEADO

[EN2002]

EMPLEADO

dni

[MPM1999]

dni

Conceptos básicos del modelo

Page 18: MODELO ENTIDAD RELAC

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)

Conceptos básicos del modelo

Page 19: MODELO ENTIDAD RELAC

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

Conceptos básicos del modelo

Page 20: MODELO ENTIDAD RELAC

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ón

telefono

calle provinciaciudadcodpostal

dni edad

altura

(0,3)

D

nss 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

Conceptos básicos del modelo

Page 21: MODELO ENTIDAD RELAC

21

CLAVE FORANEA

Es una limitación referencial entre dos tablas.

La clave foránea identifica una columna o grupo de columnas en una tabla (tabla hija o referendo) que se refiere a una columna o grupo de columnas en otra tabla (tabla maestra o referenciada). Las columnas en la tabla referendo deben ser la clave primaria u otra clave candidata en la tabla referenciada.

Conceptos básicos del modelo

Page 22: MODELO ENTIDAD RELAC

22

No suele representarse, aunque una forma de hacerlo sería: [MPM1999]

DOMINIO (values set) Conjunto de valores

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

Atributo Dominio Descripción Dominio

nombre NOMBRES cadenas de hasta 30 caracteres alfabéticos

telefono TELEFONOS cadenas de hasta 9 caracteres numéricos

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

... ... ...

TELEFONOS

NOMBRES

telefono

nombre

MEDIDASaltura

EMPLEADO

Conceptos básicos del modelo

Page 23: MODELO ENTIDAD RELAC

23

RELACIÓN (relationship) 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”

Conceptos básicos del modelo

Page 24: MODELO ENTIDAD RELAC

24

DIRECTOR HA_RODADOPELICULA

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 25: MODELO ENTIDAD RELAC

25

TIPO DE RELACIÓN (relationship set)

Estructura genérica o abstracción del conjunto de relaciones existentes entre dos o más tipos de entidadun DIRECTOR ha rodado PELICULA’s

Notación

DIRECTOR PELICULAHA_RODADO

Conceptos básicos del modelo

Page 26: MODELO ENTIDAD RELAC

26

ACTOR PELICULAACTUA_EN

CLIENTE PELICULA

LOCAL_VIDEOCLUB

ALQUILA

Grado de un tipo de relación Número de tipos de entidad que participan

en el tipo de relación Binaria: grado 2 (el más frecuente) Ternaria: grado 3 Reflexiva (o recursiva): grado 1

PELICULACONTINUACIONDE

Conceptos básicos del modelo

Page 27: MODELO ENTIDAD RELAC

27

Nombres de Rol (papel) Todo tipo de entidad que participa en un tipo

de relación juega un papel específico en la relación

Los nombres de rol se deben usar, sobre todo, en los tipos de relación reflexivos, para evitar ambigüedad

original

versiónPELICULAVERSION_DE

DIRECTOR PELICULAHA_RODADOrealizador film

Conceptos básicos del modelo

Page 28: MODELO ENTIDAD RELAC

28

Restricciones estructurales sobre tipos de relación

Limitan las posibles combinaciones de entidades que pueden participar en las relaciones

Extraídas de la situación real que se modela“Una película debe haber sido dirigida por uno y sólo un director”“Un director ha dirigido al menos una película y puede haber

dirigido muchas” Clases de restricciones estructurales:

Razón de cardinalidad (o tipo de correspondencia)

Razón de participación

Conceptos básicos del modelo

Page 29: MODELO ENTIDAD RELAC

29

Razón de Cardinalidad

Número máximo de instancias de tipo de relación 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”

Notación etiqueta en la línea que

une entidad y relación Ojo: da la sensación de

que se representa “al revés”

1

N

DIRECTOR

PELICULA

HA_RODADO

Conceptos básicos del modelo

Page 30: MODELO ENTIDAD RELAC

30

Razones de cardinalidad más comunes: 1:1 (“uno a uno”) 1:N (“uno a muchos”) M:N (“muchos a muchos”)

ACTOR

PELICULA

personaje

film

M

ACTUA_EN

N

Conceptos básicos del modelo

Razón de Cardinalidad Notación EN2002

HIJOS

PAPÁ

M

TIENE

11

1

Page 31: MODELO ENTIDAD RELAC

31

Razón de Participación Notación [EN2002]

Especifica si toda la extensión de un tipo de entidad participa en un tipo de relación, o sólo parte de la extensión

Indica si hay dependencia en existencia de un tipo de entidad respecto de un tipo de relación

Clases de participación: Participación total (dependencia en

existencia) Participación parcial

Conceptos básicos del modelo

Page 32: MODELO ENTIDAD RELAC

32

Razón de Participación (ii) [EN2002]

Notación Líneas

dobles o simples

EMPLEADO

LOCAL_VIDEOCLUB

encargado

sucursal

1

trabajador

lugar trabajo

1

TRABAJA_EN SUPERVISA

N1

DIRECTOR

PELICULA

HA_ RODADO

1

N

PELICULA

personaje

film

M

ACTUA_EN

N

ACTOR

Conceptos básicos del modelo

Page 33: MODELO ENTIDAD RELAC

33

Atributos de tipos de relación

[EN2002]

[MPM1999]

EMPLEADO

LOCAL_VIDEOCLUB

11

TRABAJA_EN SUPERVISA

N1

horas fechainicio

PELICULA(0,m)ACTUA_EN

(1,n)ACTOR

salariopapel

M:N

Page 34: MODELO ENTIDAD RELAC

34

Atributos de tipos de relación (ii) Conceptualmente pertenecen a la relación

Un atributo de una M:N es propio de la relación Un atributo de una 1:1 o 1:N “se puede llevar” a

uno de los tipos de entidad participantes

horas fechainicio

[EN2002]

horas

horas

fechainicio

EMPLEADO11

TRABAJA_EN SUPERVISA

N1

LOCAL_VIDEOCLUB

Conceptos básicos del modelo

Page 35: MODELO ENTIDAD RELAC

35

Tipo de Entidad Débil

No tiene atributos clave propios Una instancia se identifica por su relación

con una instancia de otro tipo de entidad Tipo de relación identificador

Relaciona un tipo de entidad débil y un tipo de entidad regular (fuerte, dominante, padre, propietaria)

Clave parcial (o discriminante) Atributos de la entidad débil, 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) Notación

COPIA

Conceptos básicos del modelo

Page 36: MODELO ENTIDAD RELAC

36

Tipo de entidad débil (ii) [EN2002]PELICULA

numcopia

titulo

1

N

COPIA

TIENE

PACIENTE

VISITA_MEDICA diahora

1nss

N

MEDICO ncolegiado

nombre

N

1

especialidad

ACUDE

ASISTIDAPOR

Tipo de Relación

Identificador

Clave parcial o Discriminante

Tipo de EntidadRegular

Conceptos básicos del modelo

Dependenciaen existenciaDependenciaen existencia

Page 37: MODELO ENTIDAD RELAC

37

EMPLEADO

numlicencia

dni

1

N

PERMISOCONDUCCION

POSEE

tipo

Tipo de entidad débil (iii) [EN2002] No toda participación total (o dependencia en

existencia) implica un tipo de entidad débil

PERMISO_CONDUCCIÓN no es débil: depende en existencia de EMPLEADO, pero tiene clave primaria propia

Conceptos básicos del modelo

Page 38: MODELO ENTIDAD RELAC

38

INTEGRIDAD REFERENCIAL

Es un sistema de reglas que utilizan la mayoría de las bases de datos relacionales para asegurarse que los registros de tablas relacionadas son validos y que no se borren o cambien datos relacionados de forma accidental produciendo errores de integridad.

Conceptos básicos del modelo

Page 39: MODELO ENTIDAD RELAC

39

INTEGRIDAD REFERENCIAL

Conceptos básicos del modelo

Cuando insertamos una nueva fila en la tabla secundaria y el valor de la clave foránea no existe en la tabla principal

Cuando modificamos el valor de la clave principal de un registro q tiene hijos

Como se producen los errores en los datos

Page 40: MODELO ENTIDAD RELAC

40

INTEGRIDAD REFERENCIAL

Conceptos básicos del modelo

Cuando modificamos el valor de la clave foránea, el nuevo valor de be existir en la tabla principal

Cuando queremos borrar una fila de la tabla principal y ese registro tiene hijos

Como se producen los errores en los datos

Page 41: MODELO ENTIDAD RELAC

41

INTEGRIDAD REFERENCIAL

Conceptos básicos del modelo

Actualizar registros en cascada

Eliminar registros en cascada

Soluciones que pueden darse: