Professional Documents
Culture Documents
Modelo Entidad-Relacin
Conceptos bsicos:
Entidad: cosa u objeto. Atributo: propiedad de una entidad. Relacin: asociacin entre entidades.
2005/2006
2005/2006
referir ejemplo
cantidad
prestamo
2005/2006
Entidades
Modelan un objeto o cosa del mundo real Cada Entidad es diferenciable del resto de las entidades
Existe una entidad por cada cliente del banco Los atributos caracterizan a las entidades Dos entidades no pueden tener todos sus atributos idnticos Las entidades no requieren de otra entidad/relacin para existir en la base de datos
Usualmente se denotan con una sola palabra: estudiante Su representacin grfica es un rectngulo con una etiqueta
2005/2006
cliente
2005/2006
prestamo
6
Atributos
Los atributos describen propiedades de las entidades Desde el punto de vista del diagrama E-R los atributos son primitivos
La estructura de los datos viene de las relaciones y las entidades, no de los atributos Los atributos pueden ser compuestos o multivaluados (a este nivel pero no al nivel fsico)
2005/2006
2005/2006
Relaciones
Una relacin es una asociacin entre varias entidades. Un conjunto de relaciones: es una coleccin de relaciones del mismo tipo. Formalmente:
Si E1, E2 En son conjuntos de entidades {(e1, e2, en) | ei Ei} es un conjunto de relaciones Ejemplo: (Hayes, A-102) cliente-prestamo
2005/2006
cliente
2005/2006
prestamo
10
2005/2006
11
2005/2006
12
2005/2006
13
copiar
capital
sucursal
Cuenta cliente
sucursal prestamo
cliente
Cliente prestamo
prestamo
nombrecliente
direccincliente 2005/2006
14
s Atributoscompuestos,multi
valued,yderivadosdelaentidad cliente.
2005/2006
15
Cardinalidad de asignacin
Nmero de entidades con las que puede asociarse otra entidad mediante una relacin Las restricciones de cardinalidad se expresan dibujando una flecha (), que significa uno o una linea (), que significa muchos, entre la entidad y la relacin. p.e.: relacin uno a uno:
Un cliente est asociado con no ms de un prstamo mediante la relacin cliente-prstamo un prstamo est asociado con un cliente mediante la relacin cliente-prstamo
numero
cantidad
prestamo
2005/2006
16
copia pizarra
En las relaciones uno a muchos un prstamo est asociado a un cliente y un cliente se asocia a varios (incluido 0) prestamos.
numero
cantidad
prestamo
2005/2006
17
Qu enunciado es errneo?
No puedo pedir un prstamo para el coche y otro para la casa No puedo pedir un prstamo conjuntamente con mis padres/abuelos/tos
2005/2006
18
numero
cantidad
prestamo
2005/2006
19
Un cliente esta asociado a varias (quiz 0) prstamos Y un prestamo puede estar asociado a varios clientes
2005/2006
20
2005/2006
21
2005/2006
22
Torneo de ajedrez
Almacenar informacin relacionada con las partidas de un torneo de ajedrez incluidos; jugadores, rbitro, todos los movimientos y sala de celebracin.
2005/2006
23
Nota: Aunque no sepis como implementarlas pensar en que restricciones queris aadir
2005/2006
24
Habitacin
capacidad tipo
Persona
nom. usuario
Reserva
hora fin
2005/2006
da id
hora inicio
25
2005/2006
26
Entidad o Relacin?
Habitacin
Persona
Reserva
2005/2006
27
2005/2006
28
cambiarporbinarias
Id
Autobs
Id
pasa
Parada
origen destino
Lnea Ruta
Id
2005/2006
Billete
hora salida Id dia hora
29
cambiarporbinarias
1. Rellena el atributo hora de la tabla billete dado el horario_id y el origen_id 2. Un billete debe unir paradas pertenecientes a una lnea 3. Un autobs no est asignado a dos lneas a la misma hora 4. Lnea debe referirse a paradas existentes 5. Qu ocurre si se borra una lnea, parada, ruta, billete, ? La base de datos no puede responder directamente a la pregunta como ir de A-> B a menos que A y B sean paradas de la misma lnea. Responder a una pregunta general esta en manos del interfaz de usuario
2005/2006
30
2005/2006
31
2005/2006
32
Base de Datos usada en SI1 para poner notas y asignar los grupos
3 grupos de teora, 46,47,50 6 grupos de prcticas, a,b,c,d,e,f Qu alumnos est en una clase dada? (y viceversa) Qu alumnos estn en un grupo dado? (y viceversa) Sitio para poner las calificaciones
Parcial,febrero,septiembre Practica 1,2,3,4 prctica septiembre
Administrador, usuarios Nota, usuario por tabla Vista, permisos select, update, insert
2005/2006
33
pertenecientealconjuntodeentidadesesmiembrodealmenosuna relacin
s Ejemplo:prestamoyclienteprestamo,cadaprstamodebeestar
asociadoaunclientevalarelacinclienteprestamo(nopueden existirprestamosaningunapersona)
s Ntesequeaunqueprstamodebeestarrelacionadoconcliente,
clientenotieneporqueestarrelacionadoconprestamo.
nombre id client cliente domicilio ciudad clienteprestamo prestamo numero cantidad
2005/2006
34
quiniela
s Alavezqueseexpresalacardinalidadpodemosindicarlas
restriccionesdeobligatoriedad.
s Ntesequelanotacinestainvertidaconrespectoalaque
usamosconflechas.
domicilio ciudad
numero
cantidad
0..*
clienteprestamo
1..*
prestamo
2005/2006
35
Claves
Superclave : uno o ms atributos que permiten identificar de forma nica a una entidad en el conjunto de entidades.
La combinacin de nombre-cliente y id-cliente es una superclave del conjunto de entidades cliente.
Clave primaria: la clave candidata elegida para identificar de forma unvoca a una entidad en el conjunto de entidades.
No puede tener valor nulo (NULL), no se puede repetir.
2005/2006
36
Ejemplo
ID Nombre Direccin Ciudad
2005/2006
37
ejemplo
Entonces
clave_primaria(E1) clave_primaria(E2) es una super clave de R (pero no necesariamente una clave primaria)
2005/2006
38
Claves Primarias de un Conjunto de Relaciones Binarias R entre dos Conjuntos de Entidades E1 y E2pintar Sugerencias
2005/2006
39
Claves Primarias de un Conjunto de Relaciones Binarias R entre dos Conjuntos de Entidades E1 y E2pintar Caso 1: R es uno a uno
La clave_primaria (R) = clave_primaria (E1) o la clave_primaria (R) = clave_primaria (E2)
2005/2006
40
Fecha
2005/2006 Tema 2 - Metodologa: el modelo entidad-relacin 41
Proyecto
Material
Fabrica
Proyecto
pedido
Material
Fabrica
2005/2006
43
Material
Pedido
Fabrica
Qu es incorrecto?
2005/2006 Tema 2 - Metodologa: el modelo entidad-relacin 44
sucursal
Cuenta cliente
sucursal prestamo
cliente
Cliente prestamo
prestamo
nombrecliente
direccincliente 2005/2006
45
Construir un diagrama E-R para una secretaria de universidad. La secretaria mantiene datos sobre cada asignatura, incluyendo el profesor, lista de alumnos y hora y lugar de las clases. Para cada par estudiante asignatura se registra una calificacin
2005/2006
46
2005/2006
47
Suponga que estamos modelando los datos de una COMPAIA. La base de datos COMPAIA debe mantener informacin sobre los empleados de la compaa, los departamentos y los proyectos. La descripcin del minimundo (la parte de la compaa a ser representada en la base de datos) es la siguiente: 1. La compaia est organizada en departamentos. Cada departamento tiene un nombre nico. un nmero nico, y un empleado particular quien lo administra. Se quiere saber la fecha en que el empleado administrador empez a hacerse cargo del departamento. Un departamento puede tener varios locales. 2. Cada departamento controla un cierto nmero de proyectos. Cada proyecto tiene un nombre y nmero nicos, y un local. 3. Para cada empleado se desea tener su nombre, rut, direccin, salario, sexo y ao de nacimiento. Un empleado es asignado a un departamento, pero puede trabajar en varios proyectos, los que no son necesariamente controlados por el mismo departamento. Se quiere saber el nmero de horas semanales que un empleado trabaja en cada proyecto. Se quiere adems saber cul es el supervisor directo de cada empleado. 4. Se desea conocer las personas dependientes de cada empleado para propsitos de seguros. De cada dependiente se desea conocer el nombre, sexo, fecha de nacimiento y relacin con el empleado.
2005/2006
48
Diagrama
2005/2006
49
2005/2006
50