30
Diagrama Entidad- Relación

002 Modelo Entidad-Relacion

Embed Size (px)

DESCRIPTION

modelo de identidad

Citation preview

Page 1: 002 Modelo Entidad-Relacion

Diagrama Entidad-Relación

Page 2: 002 Modelo Entidad-Relacion

Introducción al proceso de diseño

• Diseño del esquema de la base de datos

• Diseño de los programas de acceso y actualización de datos

• Diseño del esquema de seguridad y de control de acceso a los datos

Page 3: 002 Modelo Entidad-Relacion

Fases del diseño

• Identificar las necesidades de datos de los usuarios de la base. Se obtiene la especificación de los requerimientos del usuario.

• Seleccionar un modelo de datos y traducir estos requerimientos en un esquema conceptual de la base de datos. Se usa el diagrama entidad-relación para representarlo gráficamente.

Page 4: 002 Modelo Entidad-Relacion

Evitar en el diseño…

• Redundancia: Un mal diseño puede repetir información.

• Falta de información

Page 5: 002 Modelo Entidad-Relacion

Ejercicio

• Se requiere tener la información sobre los análisis de laboratorio que se llevan a cabo a los pacientes que están internados en un hospital. De cada paciente se requieren sus datos personales, los análisis que se le han practicado, el nombre del médico que solicitó los exámenes y el resultado de cada una de ellas. De cada prueba de laboratorio se necesita saber el nombre de la prueba, lo que mide la prueba (suponer que cada análisis de laboratorio mide una sola cosa), descripción de su aplicación y su costo.

• ¿Cómo podrías guardar esta información y en cualquier momento poderla recuperar?

Page 6: 002 Modelo Entidad-Relacion

Modelo E-R: Entidades

• Una entidad es una cosa o un objeto del mundo real que es distinguible de otros objetos. Por ejemplo, una paciente en un hospital. Una entidad tiene un juego de propiedades y los valores de estas propiedades identifican en forma única una entidad. Por ejemplo el número que se le asigna al paciente al ingresar al hospital.

Page 7: 002 Modelo Entidad-Relacion

Modelo E-R: Atributos

• Una entidad es representada por un juego de atributos. Los atributos son propiedades descriptivas de las entidades. Cada entidad tiene su propio valor para cada atributo. Ejemplo número de paciente, nombre, dirección, etc.

• Un juego de entidades es un conjunto de entidades del mismo tipo que comparten las mismas propiedades o atributos. El juego de todos los pacientes de un hospital.

Page 8: 002 Modelo Entidad-Relacion

Modelo E-R: Relaciones

• Una relación es una asociación entre entidades. Por ejemplo un x paciente tiene tal padecimiento.

PACIENTE PADECIMENTO

Juan López Hepatitis

Page 9: 002 Modelo Entidad-Relacion

Dominios

• Para cada atributo, existe un juego de valores permitidos llamado el dominio o juego de valores. Por ejemplo para el atributo nombre del paciente el dominio será el juego de todos las cadenas de texto de una cierta longitud.

Page 10: 002 Modelo Entidad-Relacion

Tipos de Atributos

• Simples: son aquellos que no se han dividido en subpartes.

• Compuestos: son los que pueden dividirse en otros atributos, por ejemplo el atributo nombre, puede dividirse en nombre, apellido materno y apellido paterno.

• De un solo valor: Por ejemplo la edad del paciente es única.

• Multivalor: Por ejemplo un paciente puede tener cero o más números telefónicos.

• Derivado: el valor de este tipo de atributo es obtenido a partir de los valores de otro

Page 11: 002 Modelo Entidad-Relacion

Cardinalidad• Es el número de entidades con la cual otra

entidad puede asociar mediante una relación

• Considerando una relación binaria entre el juego de entidades A y el B, la cardinalidad puede ser:– Uno a uno– Uno a muchos ó muchos a uno– Muchos a muchos

Page 12: 002 Modelo Entidad-Relacion

Uno a uno• Una entidad en A esta asociada con

cualquier número de entidades en B (0 ó más) y viceversa

A1A2A3A4

B1B2B3B4B5

EJEMPLO: Un paciente en un hospital tiene un solo cuarto y un cuarto pertenecea un solo paciente (hospital privado)

Page 13: 002 Modelo Entidad-Relacion

Uno a muchos• Una entidad en A esta asociada con

cualquier número (0 ó más) de entidades en B. Una entidad en B, puede estar asociada a lo mucho con una entidad en A

A1A2A3

B1B2B3B4B5

EJEMPLO: El titular de una cuenta de cheques puede tener cualquier número de tarjetas, pero cada tarjeta pertenece a una sola persona

Page 14: 002 Modelo Entidad-Relacion

Muchos a muchos• Una entidad en A esta asociada con

cualquier número de entidades en B (0 ó más) y viceversa

A1A2A3A4

B1B2B3B4B5

EJEMPLO: En un proyecto de investigación puede haber cualquier númerode médicos, un médico puede participar en cero o varios proyectos

Page 15: 002 Modelo Entidad-Relacion

Llave Primaria

• Son atributos que se usan para diferenciar una entidad de otra, por ejemplo un medicamento de otro, o un paciente de otro. Puede haber varias llave candidato.

• La llave primaria debe ser única y de preferencia no cambie con el tiempo.

• Cada juego de entidades (tabla) debe tener una llave primaria.

Page 16: 002 Modelo Entidad-Relacion

Cardinalidad: obligatoria y opcional

Uno a uno obligatorio: un empleado enUna empresa tiene uno y solo un puesto, unPuesto pertenece a un solo empleado

Uno a muchos opcional: un profesor en laFac. de Ingeniería puede dar 0 o varias clases y una clase está dada por uno y solo un profesor

Muchos a muchos obligatorio: una materia puede pertenecer a una o varias carreras, una carrera está formada por varias materias.

Uno a uno opcional: Un paciente puede estar asignado a un cuarto o a ninguno. En un cuarto puede haber cero o un paciente

Page 17: 002 Modelo Entidad-Relacion

Diagramas Entidad-Relación (E-R)

Un diagrama E-R consiste de:- Rectángulos: representan juegos de entidades- Elipses: representan atributos- Diamantes: representan juegos de relaciones- Líneas: son ligas entre atributos y entidades y

entre juegos de entidades y de relaciones- Elipses dobles: son atributos multivalor- Elipses punteadas: son atributos derivados- Rectángulos dobles: representan juegos de

entidades débiles.

Page 18: 002 Modelo Entidad-Relacion

Metodología

• Identificar entidades : Definir objetos como personas, lugares o conceptos sobre los que se quiere tener información.

• Identificar atributos: Definir las “propiedades” de cada entidad

• Determinar llave primaria de cada entidad

• Identificar relaciones entre las entidades

• Señalar cardinalidad entre las entidades

Page 19: 002 Modelo Entidad-Relacion

Ejemplo: uno a uno

• Cuando se decide ingresar a un paciente a un hospital se le asigna un cuarto y en un cuarto puede estar un paciente o ninguno (suponiendo un hospital privado).

paciente cuarto

n_paciente

i_paciente#

a_paciente

i_cuarto#

i_cuarto#i_piso

q_costod_ingreso

Page 20: 002 Modelo Entidad-Relacion

Ejemplo: uno a muchos

• El titular de una cuenta de cheques puede tener cualquier número de tarjetas, pero cada tarjeta pertenece a una sola persona, las entidades son cliente y tarjeta

cliente tarjeta

n_cliente

i_cliente#

a_cliente

i_tarjeta#i_password

q_limited_apertura i_cliente#

Page 21: 002 Modelo Entidad-Relacion

Ejemplo: muchos a muchos

• En un proyecto de investigación puede haber cualquier número de médicos, un médico puede participar en cero o varios proyectos

medico proyecto

n_medico

i_medico#

a_medico

i_especial

i_proyecto#n_proyecto

t_resumen

a_telefono

Page 22: 002 Modelo Entidad-Relacion

Rompiendo el muchos a muchos• En el diseño de una base de datos no se permiten

relaciones “muchos a muchos”, cuando se tiene esto se crea una “relación” entre ambas cuya llave primaria será una llave compuesta por las llaves primarias de las entidades que está uniendo

medico proyecto

n_medico i_medico#

a_medico

i_especial

i_proyecto#n_proyecto

t_resumen

a_telefono

medico-proyecto

i_medico# i_proyecto#

Page 23: 002 Modelo Entidad-Relacion

Relaciones y llaves primarias vs cardinalidad

cardinalidad Relación entre entidades Llave foránea

Uno a uno No es necesario crear una relación entre las entidades

Se crea una llave foránea en una de las entidades relacionadas que corresponde a la llave primaria en la otra

Uno a muchos No es necesario crear una relación entre las entidades

Se crea una llave foránea del lado de la entidad “muchos” que corresponde a la llave primaria del lado “uno”

Muchos a muchos

Se crea una relación con llave primaria compuesta formada por las llaves primarias de las entidades que une la relación

En las entidades no hay llave foránea.

Page 24: 002 Modelo Entidad-Relacion

Solución ejercicio

Analizando el ejercicio del laboratorio, las siguientes entidades: – Paciente y Análisis

– Paciente y Médico

Page 25: 002 Modelo Entidad-Relacion

Diagrama E-R

• Se tienen dos juegos de entidades: paciente y análisis de laboratorio.

paciente analisis

A un paciente hospitalizado se le pueden practicar cero o varios análisis yun análisis puede practicársele a ninguno o a muchos pacientes.Esto implica que tenemos una relación muchos a muchos optativa enambos lados.

Page 26: 002 Modelo Entidad-Relacion

Rompiendo el muchos a muchos

Debemos crear una relación entre ambas

i_anal n_anal q_anal t_desc

A-1 leuco 300.00 ayuno

A-2 embar 200.00 ayuno

paciente analisispaciente-analisis

i_pac n_pac a_pac i_med

1234 Laura Pino 48

289

3678 María Juarez 56

456

i_pac i_anal t_resu d_anal

1234 A-1 3.8 5/I/08

1234 A-2 Pos 7/I/07

1234 A-1 4.4 2/II/08

3678 A-2 neg 3/I/08

Page 27: 002 Modelo Entidad-Relacion

Diagrama E-R

• Los juegos de entidades: paciente-análisis y médico.

paciente-analisis

medico

A un paciente hospitalizado se le pueden practicar cero o varios análisis y cada análisis se lo manda un doctor. A su vez un doctor puede mandaruno o varios análisis a los distintos pacientes.Esto implica que tenemos una relación uno a muchos obligatoria.

Page 28: 002 Modelo Entidad-Relacion

Rompiendo el muchos a muchos

Debemos crear una relación entre ambas

i_med n_nom t_esp

289 Pérez cirujano

456 López ginecól

paciente-analisis

medico

i_pac i_anal t_resu d_anal i_med

1234 A-1 3.8 5/I/08 289

1234 A-2 Pos 7/I/07 456

1234 A-1 4.4 2/II/08 289

3678 A-2 neg 3/I/08 456

Page 29: 002 Modelo Entidad-Relacion

Ejercicio en clase

• Determinar cuales serán los atributos de las entidades del diagrama anterior.

• ¿Falta una entidad?, ¿Dónde quedaría en el diagrama, con qué entidad se liga, cuáles serían sus atributos?

• ¿Las entidades paciente y médico están relacionadas?

Page 30: 002 Modelo Entidad-Relacion

Tarea

• Construir un diagrama E-R para una compañía aseguradora que vende seguros de gastos médicos mayores. Los clientes pueden tener más de una persona asegurada. También se requiere llevar el registro de las veces que ha utilizado el seguro cada uno de los asegurados como por ejemplo fecha, descripción de la enfermedad y/o accidente, procedimiento hospitalización, intervenciones, médico tratante, etc.