Está en la página 1de 57

Modelos de BD

Existen diversos modelos para modelar los datos

/6 2

Modelo Entidad - Relacin


Modelo E-R del mundo real
Entidades (objeto o cosas del mundo real distinguible de otros) Relaciones (asociacin entre entidades)

Usado para el diseo de BD


El diseo de una BD en modelo E-R luego es convertido en un diseo de modelo Relacional, el cual es usado para almacenamiento y procesamiento.

/6 2

Modelo Relacional
El modelo relacional es un modelo de datos basado en la lgica de predicado y en la teora de conjuntos. Una base de datos relacional es un conjunto de dos o mas tablas estructuradas en registros (lneas) y campos (columnas), que se vinculan entre s por un campo en comn.

/6 2

Ejemplo 1

/6 2

Ejemplo 1

MODELO ENTIDAD-RELACION

/6 2

Introduccin
Modelo de datos conceptual de alto nivel Propuesto por Peter P. Chen en 1976 Describe el mundo real como un conjunto de ENTIDADES y de RELACIONES entre ellas Existe una familia de modelo ER Soportado por herramientas software de diseo (CASE)

/6 2

Elementos
1. Entidad ( entity ) 1. Atributo ( attribute ) 1. Relacin ( relationship ) 1. Dominio ( values set )

/6 2

1. Entidad
Cosa u objeto del mundo real con existencia propia y distinguible del resto Objeto con existencia... fsica o real (una persona, un libro, un empleado) abstracta o conceptual (una asignatura, un viaje) Las entidades tienen atributos. Ejemplo: las personas tienen nombre, direccin, etc. Un conjunto de entidades es un conjunto de entidades del mismo tipo que comparten las mismas propiedades Ejemplo: conjunto de todas las personas, empresas, rboles
/6 2

1. Entidad
clienteid clientenombre clientecalle clienteciudad presta momonto

/6 2

2. Atributo
Propiedad o caracterstica de una entidad Una entidad particular es descrita por los valores de sus atributos: titulo = El alquimista genero = impaciente Thriller nacionalidad = Espaa aoestreno = .. 2002 . = dni nss = 87654321 nombre = Cristina Aliaga 1122334455 nacionalidad = Gil .. Espaa .
/6 2

p1

e1

2. Atributos Compuestos

/6 2

3. Relacin
Una relacin es una asociacin entre diferentes entidades. Ejemplo: Ortiz posee A-102 entidad cliente conjunto relaciones entidad cuenta Una relacin tambin puede tener atributos descriptivos

/6 2

4. Dominio
Conjunto de valores permitidos para cada atributo Tipos de atributos: Simples y compuestos Univalorados y multivalorados E.j. multivalorado : numero-telefono Derivados Puede ser derivado de valores de otros atributos o entidades E.j. edad, dada la fecha de nacimiento

/6 2

1. ENTIDAD

/6 2

Instancias de una entidad


Tambin... Ocurrencia Realizacin Ejemplar Entidad concreta o individual

PELICU LA titulo = El seor de los genero anillos = Fantasa nacionalidad = EEUU aoestreno = .. 2001 . titulo = genero Amelie = p4 Comedia nacionalidad = Francia aoestreno = .. 2001 . /6
2

p2

p3

titulo = Amores genero perros = Drama nacionalidad = Mjico aoestreno = .. 1999 .

Tipo de Entidad (entity set)


Define un conjunto de entidades que poseen los mismos atributos PELICULA: titulo, genero, nacionalidad, aoestreno, numcopias EMPLEADO: dni, nss, nombre, fechanacim, direccion, telefono, altura, nacionalidad, edad Notacin EMPLEA DO CLIEN TE PELICU LA LOCAL VIDEOCL UB DIRECT OR ACTO R
/6 2

Tipo de Entidad
EMPLEADO: dni, nss, nombre, direccin, telefono, altura, fechanacim, nacionalidad, edad Las instancias del tipo de entidad se agrupan en un conjunto de entidades o extensin
e1 (87654321, 1122334455, Cristina Aliaga Gil, Libertad, 2. Yecla. Murcia. 30510, 968100200, 160, 28/07/1979, Espaa, 23) e2 (12345678, 6677889900, Antonio Gil Snchez, Paz, 5. Murcia. Murcia.30012, 968111222, 176, 14/04/1944, Espaa, 58) e3 (11223344, 1234567890, Julia Sauce, Justicia, 20. Yecla. Murcia. 30510, 968000222, 159, 23/05/1947, Espaa, 55) ...
/6 2

Claves
Claves (Llaves): Atributos que identifican una entidad dentro de un conjunto de entidades. Superclave: Conjunto de atributos no vaco, que identifica en forma nica una entidad dentro de un conjunto de entidades. Superclave = {superclaves} Clave candidata: Es una superclave para la cual ningn subconjunto es superclave, excepto el mismo. Clave primaria. Es la clave candidata escogida por el diseador. Atributo o conjunto de atributos que permiten identificar en forma nica una tupla en la tabla y ningn subconjunto de ella posee esta propiedad (subrayado). Llave fornea: Es un atributo que es llave primaria en otra entidad con la cual se relaciona. Relacionar las entidades.
/6 2

Tipo de Entidad Dbil


No tiene atributos clave propios Una instancia se identifica por su relacin con una instancia de otro tipo de entidad Clave parcial (o discriminante) Atributos de la entidad dbil, que identifican de forma nica cada instancia. Clave = (clave_entidad_regular, clave_parcial)
/6 2

2. ATRIBUTOS

/6 2

Tipos de atributos
Simples o Compuestos Almacenados o Derivados Monovalorados o Multivalorados Opcionales
compuestos
simples y monovalorados

multivalorados

derivados

/6 2

Atributos Simples o Compuestos


Atributos compuestos Pueden dividirse en otros con significado propio fechanac direcci im on di me a call ciuda provinc codpos a s o e d ia tal Valor compuesto = concatenacin de valores de componentes Atributos simples No divisibles. Atmicos

gener o

/6 2

Atributos Almacenados o Derivados


Atributos derivados Valor calculado a partir de otra informacin ya existente (atributos, entidades relacionadas) Son informacin redundante... edad [de EMPLEADO], clculo a partir de fechanacim atributo derivado del valor de otro atributo numcopias [de una PELICULA], cuenta del nmero de entidades COPIA relacionadas con cada pelcula concreta atributo derivado de entidades relacionadas Atributos almacenados
/6 2

Monovalorados o Multivalorados
Atributos monovalorados (monovaluados) slo un valor para cada entidad fechanacim [de un EMPLEADO particular] aoestreno [de cada PELICULA concreta] Atributos multivalorados (multivaluados) ms de un valor para la misma entidad nacionalidad [PELICULA coproducida por varios
pases ]

telefono [ EMPLEADO con varios telfonos de contacto] pueden tener lmites superior e inferior del nmero de valores por entidad nacionalidad (1-2) /6 telefono (0-3) 2

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 ningn valor aplicable para el atributo: fechaalquiler [PELICULA slo en vdeo-venta (no alquiler)]
/6 2

Notacin para atributos


[EN2002]
ciudad calle fechanacim nombre nss direccin
(0, EMPLEA 3) (0, altura 1) DO (1, 2)

provincia codpostal telefono

dni

edad

nacionalidad

/6 2

Atributos Clave
Atributo con valor distinto para cada instancia de un tipo de entidad
ciudad provincia calle codpostal direccin fechanacim telefono n-f

dni en EMPLEADO
Una clave identifica de forma nica cada entidad concreta atributo identificador

nombre

nss

(0, EMPLEA 3) (0, altura 1) DO (1, 2) IP nacionalidad

dni

edad

/6 2

3. RELACIONES

/6 2

RELACIN (relationship)
Tambin interrelacin Asociacin, vnculo o correspondencia entre instancias de entidades relacionadas. el director Alejandro Amenbar ha rodado la pelcula Mar adentro Abstraccin un DIRECTOR ha rodado PELICULAs DIRECT OR PELICU LA
/6 2

HA_RODA DO

DIRECTOR HA_RODADO PELICULA


Instancia del tipo de relacin Vacas J. Mdem C. Saura F. Trueba S. Segura A. Amenbar Tierra Abre los ojos Los otros Tesis Belle Epoque Torrente

Tipo de Entidad: conjunto de instancias

Tipo de Relacin: conjunto de instancias

/6 2

Grado de un tipo de relacin


Nmero de tipos de entidad que participan en el tipo de relacin
ACTOR ACTUA_ EN Binaria: grado 2 (el ms frecuente) CONTINUACI ON DE Reflexiva (o recursiva): grado 1 PELICUL A Ternaria: grado 3 ALQUIL PELICUL A A LOCAL_VIDEOCL UB
/6 2

PELICUL A

CLIENTE

Nombres de Rol (papel)


Todo tipo de entidad que participa en un tipo de relacin juega un papel especfico en la relacin
DIRECTO R realizad or HA_RODA DO fil m PELICUL A

Los nombres de rol se deben usar, sobre todo, en los tipos de relacin reflexivos, para evitar ambigedad
original VERSION_ DE versi n PELICUL A

/6 2

Cardinalidad
Limitan las posibles combinaciones de entidades que pueden participar en las relaciones Extradas de la situacin real que se modela Una pelcula debe haber sido dirigida por uno y slo un director Un director ha dirigido al menos una pelcula y puede haber dirigido muchas Nmero mximo de instancias de tipo de relacin 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 /6
2

Cardinalidad
Nmeros mnimo y mximo de instancias de un tipo de entidad que pueden estar relacionadas con una instancia del otro tipo de entidad Notacin (min, max) en la lnea que une entidad y relacin
PERSONA EDIFICIO POSEE

PERSON (0,m) A (1,1 )

USA POSE E

(1, n) (0, n)

EDIFICI O

p1

e1 e2

p2 p3 e3 e4

/6 2

Cardinalidad
Razones de cardinalidad ms comunes: 1:1 (uno a uno) 0:N (cero o muchos) 1:N (uno a muchos) M:N (muchos a muchos)
trabajad EMPLEAD O or 1 encarga 1 do TRABAJA_ SUPERVI EN SA sucursal N 1 LOCAL_VIDEOCL lugar UB trabajo ACTOR persona M je ACTUA_ EN N film PELICUL A
/6 2

Cardinalidad recursiva
continuaci (0,1) n PELICU precue la (0, LA 1) versi (0,n) nPELICU LA origin al (0, 1)
SECUELA DE

1: 1

VERSIO NA

N: 1

/6 2

Razn de Participacin
Especifica si toda la extensin de un tipo de entidad participa en un tipo de relacin, o slo parte de la extensin. Clases de participacin: Participacin total (dependencia en existencia) Participacin parcial
trabajad EMPLEAD or O encarga 1 1 do TRABAJA_ SUPERVI EN SA sucursal N 1 LOCAL_VIDEOCL lugar UB trabajo

DIRECTO R
1

ACTOR persona M je ACTUA_ EN N film PELICUL A


/6 2

HA_ RODADO
N

PELICULA

Atributos de tipos de relacin


1 horas TRABAJA_ EN 1 EMPLEAD O 1 SUPERVI SA N LOCAL_VIDEOCL UB fechainicio

/6 2

Atributos de tipos de relacin


Conceptualmente pertenecen a la relacin Un atributo de una M:N es propio de la relacin Un atributo de una 1:1 o 1:N se puede llevar a uno de los tipos de entidad participantes
EMPLEAD O 1 SUPERVI SA N LOCAL_VIDEOCL UB horas
/6 2

horas

1 horas TRABAJA_ EN 1

fechainicio

fechainicio

TIPO DE ENTIDAD DEBIL

/6 2

Tipo de entidad dbil


Tipo de ns s PACIEN TE 1 ACUD E N VISITA_MEDIC A N ASISTI DA 1 POR MEDIC O especialid ad Entida d Tipo de Relacin Regula r Identificad or diaho ra PELICUL A 1 TIEN E N COPIA Clave parcial o Discriminante ncolegia do nombre numcop ia titul o

Dependen cia en

/6 2

Tipo de entidad dbil


Dependencia en existencia (entre entidades) Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad dbil que dependen de ella Etiqueta E en el tipo de relacin dbil Dependencia en identificacin Adems de la dependencia en existencia... Una instancia del tipo de entidad dbil no se puede identificar por s misma Su clave es (clave_entidad_regular, clave_parcial) Etiqueta ID en el tipo de relacin dbil
/6 2

Tipo de entidad dbil


dni EMPLEAD O E POSE E PERMISO COPIA CONDUCCIO N Tipo de Relacin Dbil PELICULA ID TIENE 1:N numcopi a idcopia titulo

1:N numlicenc ia tip o

PERMISO_CONDUCCION es dbil, pues depende en existencia de EMPLEADO, pero no depende en identificacin

COPIA es dbil, pues depende en existencia de PELICULA, y tambin depende en identificacin

/6 2

4. DOMINIOS

/6 2

Dominio (values set)


Conjunto de valores Cada atributo simple est asociado a un dominio, que especifica sus valores vlidos
Atributo Dominio NOMBRES Descripcin Dominio cadenas de hasta 30 caracteres alfabticos cadenas de hasta 9 caracteres numricos nmeros reales entre 0 y 25 (metros) ...

nombre

telefono TELEFONOS altura


... MEDIDAS ...

No suele representarse, aunque una forma de hacerlo sera:

EMPLEA DO

nomb re telefo no altur a

NOMBRE S TELEFONOS MEDIDAS


/6 2

[MPM1999]

Valores validos
Los valores validos para un atributo deben tener asignado informacin acerca de:
Tipo de Datos. Los tipos bsicos son entero, decima, caractery fecha-hora. Longitud. Es el nmero de dgitos o caracteres en el valor de un atributo. Formato de Fecha. Peste puede ser dd/mm/yyyy o yyyy/mm/dd. Rango. Especifica el intervalo entre los cuales se puede tomar valor un atributo. Restriccin. Son restricciones particulares sobre un atributo. Soporte de NULL. El atributo puede aceptar valores NULL. Defaul. El atributo toma un valor por defecto cuando se instancia.

/6 2

Ejercicio
Se requiere tener la informacin sobre los anlisis de laboratorio que se llevan a cabo a los pacientes que estn internados en un hospital. De cada paciente se requieren sus datos personales, los anlisis que se le han practicado, el nombre del mdico que solicit los exmenes 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 anlisis de laboratorio mide una sola cosa), descripcin de su aplicacin y su costo. Cmo podras guardar esta informacin y en cualquier momento poderla recuperar?
/6 2

Metodologa
Identificar entidades : Definir objetos como personas, lugares o conceptos sobre los que se quiere tener informacin. Identificar atributos: Definir las propiedades de cada entidad Determinar llave primaria de cada entidad Identificar relaciones entre las entidades Sealar cardinalidad entre las entidades

/6 2

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).

i_paciente# n_paciente a_paciente

i_cuarto#

i_piso

paciente
i_cuarto# d_ingreso q_costo

cuarto

/6 2

Solucin ejercicio
Analizando el ejercicio del laboratorio, las siguientes entidades:
Paciente y Anlisis Paciente y Mdico

/6 2

Diagrama E-R
Se tienen dos juegos de entidades: paciente y anlisis de laboratorio.

paciente

analisis

A un paciente hospitalizado se le pueden practicar cero o varios anlisis y un anlisis puede practicrsele a ninguno o a muchos pacientes. Esto implica que tenemos una relacin muchos a muchos optativa en ambos lados. /6
2

Rompiendo el muchos a muchos


Debemos crear una relacin entre ambas
paciente pacienteanalisis
i_med 289 456 i_pac 1234 1234 1234 3678 i_anal A-1 A-2 A-1 A-2 t_resu 3.8 Pos 4.4 neg d_anal 5/I/08 7/I/07 A-2 2/II/08 3/I/08 embar 200.00 ayuno i_anal A-1 n_anal leuco q_anal 300.00 t_desc ayuno

analisis

i_pac 1234 3678

n_pac Laura Mara

a_pac Pino 48 Juare z 56

/6 2

Diagrama E-R
Los juegos de entidades: paciente-anlisis y mdico.

pacienteanalisis

medico

A un paciente hospitalizado se le pueden practicar cero o varios anlisis y cada anlisis se lo manda un doctor. A su vez un doctor puede mandar uno o varios anlisis a los distintos pacientes. Esto implica que tenemos una relacin uno a muchos obligatoria.
/6 2

Rompiendo el muchos a muchos


Debemos crear una relacin entre ambas
pacienteanalisis
i_pac 1234 1234 1234 3678 i_anal A-1 A-2 A-1 A-2 t_resu 3.8 Pos 4.4 neg d_anal 5/I/08 7/I/07 2/II/08 3/I/08 i_med 289 456 289 456 /6 2

medico

i_med 289 456

n_nom Prez Lpez

t_esp cirujano ginecl

Ejercicio en clase
Determinar cuales sern los atributos de las entidades del diagrama anterior. Falta una entidad?, Dnde quedara en el diagrama, con qu entidad se liga, cules seran sus atributos? Las entidades paciente y mdico estn relacionadas?

/6 2

Tarea
Construir un diagrama E-R para una compaa aseguradora que vende seguros de gastos mdicos mayores. Los clientes pueden tener ms de una persona asegurada. Tambin se requiere llevar el registro de las veces que ha utilizado el seguro cada uno de los asegurados como por ejemplo fecha, descripcin de la enfermedad y/o accidente, procedimiento hospitalizacin, intervenciones, mdico tratante, etc.

/6 2

También podría gustarte