basesdatos teo3 modelo er

27
1 Sistemas de Información II Tema 3. El modelo entidad-relación Carlos Castillo UPF – 2008 Bibliografía: Elmasri y Navathe: “Fundamentos de Sistemas de Bases de Datos” 3ª edición, 2002 (Capítulo 3). Garcia-Molina, Ullman y Widom: “Database systems: the complete book”. Prentice-Hall (Capítulo 2).

Upload: carlos51234

Post on 18-Nov-2014

312 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Basesdatos Teo3 Modelo Er

1

Sistemas de Información II

Tema 3. El modelo entidad-relación

Carlos Castillo

UPF – 2008

Bibliografía:Elmasri y Navathe: “Fundamentos de Sistemas de Bases de

Datos”3ª edición, 2002 (Capítulo 3).

Garcia-Molina, Ullman y Widom: “Database systems: the complete book”. Prentice-Hall (Capítulo 2).

Page 2: Basesdatos Teo3 Modelo Er

2

Análisis de requerimientos

Requisitos funcionales

¿Qué debe hacer el sistema?

Transacciones

Requisitos de datos

¿Qué debe almacenar el sistema?Pensar en el futuro

Tipos de dato

Esquema de datos

Diseño lógico -> tablas

Page 3: Basesdatos Teo3 Modelo Er

3

Tolerancia a cambios

Nombre de un cliente

¿1 Nombre y 1 Apellido?

¿Y si tiene 2 nombres? ¿3 nombres?

¿Y si su apellido usa un “-” y es muy largo?

¿Y si cambia de nombre en el futuro?Debe permitir lectura/escritura sin alterar la BD

¿Y si hay otra persona con el mismo nombre?

No puede ser identificador único

¿Y si se trata de una cuenta bipersonal?¿Cliente y persona no son lo mismo?

Page 4: Basesdatos Teo3 Modelo Er

4

Tolerancia a cambios (cont.)

Estructura geográfica varía

País > Comunidad > Municipio > Ciudad

País > Estado > Provincia > Municipio > Ciudad

País > Región > Ciudad

País > Ciudad

...

Page 5: Basesdatos Teo3 Modelo Er

5

Definiciones

Entidad: un objeto abstracto de algún tipo (~instancia)

Conjunto de entidades: una colección de objetos similares (~clase)

Atributos: propiedades de entidades en un conjunto de entidades

Relaciones: conecciones entre dos o más conjuntos de entidades

Page 6: Basesdatos Teo3 Modelo Er

6

Diagramas entidad-relaciónDescriben el esquema de una base de datos

Recordemos: estado de la base de datos es la descripción de los datos que tiene ahora

Entidades

Rectángulos, representan objetos reales

Atributos

Óvalos, representan propiedades de estos objetos

Relaciones

Rombos, representan enlaces

Page 7: Basesdatos Teo3 Modelo Er

7

ActúaPelícula

Nombre Año

Produce Estudio

Nombre Dirección

Actor

Nombre Apellido

Ejemplo diagrama E-R

Page 8: Basesdatos Teo3 Modelo Er

8

ActúaPelícula

Nombre Año

Produce Estudio

Nombre Dirección

Actor

Nombre Apellido

Entidades

Page 9: Basesdatos Teo3 Modelo Er

9

ActúaPelícula

Nombre Año

Produce Estudio

Nombre Dirección

Actor

Nombre Apellido

Atributos

Page 10: Basesdatos Teo3 Modelo Er

10

ActúaPelícula

Nombre Año

Produce Estudio

Nombre Dirección

Actor

Nombre Apellido

Relaciones

Page 11: Basesdatos Teo3 Modelo Er

11

Ejemplo complejo

Page 12: Basesdatos Teo3 Modelo Er

12

Tipos de atributo

Atributos atómicos o compuestos

Persona

Nombre

PrimerNombre

Domicilio

Apellido

DirecciónCalle

Número

Piso

Puerta

Día

País

FechaNacimiento Ciudad

Mes Año

Page 13: Basesdatos Teo3 Modelo Er

13

Tipos de atributo (cont.)Valores

Monovaluados (ej.: edad)

Multivaluados (ej.: teléfonos)

Almacenados o derivados

Ej.: la edad de una persona es casi siempre un atributo derivado de la fecha de nacimiento

Posiblemente nulos

Cuando un atributo se puede dejar “en blanco”

Claves

Permiten localizar una entidad, son únicos

Page 14: Basesdatos Teo3 Modelo Er

14

Atributos clave: subrayados

ActúaPelícula

Nombre Año

Produce Estudio

Nombre Dirección

Actor

Nombre Apellido

DNI

id_estudio

id_película

Page 15: Basesdatos Teo3 Modelo Er

15

Relaciones

Tipo de relación

Ejemplo: es_jefe_de, participar_en_curso

Instancia de relación

Juan es_jefe_de Pedro

Grado de una relación

Número de entidades que participan

Binario, terciario, etc.

Cardinalidades

Número de instancias de cada entidad

Page 16: Basesdatos Teo3 Modelo Er

16

Cardinalidad de una relación

DirigePersona Departamento1 1

TrabajaPersona DepartamentoN 1

ActúaPelícula ActorN N

Page 17: Basesdatos Teo3 Modelo Er

17

Relaciones como atributos

ActúaPelícula

Nombre Año

Estudio

Nombre Dirección

Actor

Nombre Apellido

DNI

id_estudio

id_película id_estudio

¿En qué casos es posibleponer un vínculo como unatributo?

Page 18: Basesdatos Teo3 Modelo Er

18

Relaciones con atributos

ActúaPelícula

Nombre Año

Actor

Nombre Apellido

DNIid_película id_estudio

Rol

Page 19: Basesdatos Teo3 Modelo Er

19

Relaciones ternarias

ActúaPelícula

Nombre Año

Actor

Nombre Apellido

DNIid_película id_estudio

Personaje

Nombre Rol

Page 20: Basesdatos Teo3 Modelo Er

20

Disminuir grado a una relación

ContratoPelícula

Nombre Año

Actor

Nombre Apellido

Estudio

Nombre

Salario

Moneda Monto

Page 21: Basesdatos Teo3 Modelo Er

21

Reemplazar por relación binariay por una entidad extra

Asignado

Película

Actor

Estudio

Salario

Nómina

FirmaActúa Contrato

Page 22: Basesdatos Teo3 Modelo Er

22

Relaciones recursivas

Supervisor_de

Persona

Nombre Apellido

Supervisor

DNI

Supervisado

Relación recursiva,puede tener restriccionesno especificadas en el diagrama (ej.: evitarcadenas circulares)

Requiere un nombre (rol) en el vínculo

Page 23: Basesdatos Teo3 Modelo Er

23

Restricciones en relaciones

Cardinalidad

1:1PERSONA es_director_de_departamento DEPTO

1:NPERSONA trabaja_en_departamento DEPTO

N:NALUMNO inscrito_en_curso CURSO

Page 24: Basesdatos Teo3 Modelo Er

24

Relaciones (cont.)

Restricción de participación

Total: todas las personas deben tener un depto

Parcial: no es necesario

Roles

Cada extremo puede tener un rol

Page 25: Basesdatos Teo3 Modelo Er

25

Entidades débiles y fuertes

Entidad débil

No tienen atributos clave propios

Necesitan otra entidad para ser identificados

Entidad fuerte

Si tienen clave propia

Persona

Nombre

DNI

Vive Domicilio

Ciudad

Calle Número

Page 26: Basesdatos Teo3 Modelo Er

26

Ejercicios

Cinéfilos

Pisos

Page 27: Basesdatos Teo3 Modelo Er

27

Resumen

Entidades

Atributos

Relaciones

Diagramas entidad-relación