Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CONCEPTUAL.
MODELO ENTIDAD/RELACIN.
UNIDAD 2
Bases de datos
Modelado de BD
En el proceso de diseo de la BD, se
obtiene el esquema conceptual en el
que se definen todos los datos del
problema y sus relaciones. El modelo
conceptual ms conocido es el modelo
E/R propuesto por Chen.
Bases de datos
1
Modelado de BD
Es un modelo orientado a conceptos, no
toma en cuenta la estructura final de los
datos sino los objetos que se representan
y las relaciones entre ellos.
Suele realizarse como paso previo al modelo
lgico, es decir primero se realiza el
modelo entidad relacin para representar
la realidad que queremos transformar en
BD y a partir de l se pasar al modelo
lgico
Bases de datos
Modelado de BD
El modelo conceptual es independiente del
DBMS que se vaya a utilizar.
El lgico depende de un tipo de SGBD en
particular, es ms cercano al ordenador
El modelo conceptual es ms cercano al
usuario, el lgico es el encargado de
establecer el paso entre el modelo
informtico y el modelo fsico del sistema.
Bases de datos
2
Modelado de una Base de
datos
Bases de datos
Mundo real
Realidad concreta que deseamos
modelar
Bases de datos
3
Modelos conceptuales
Existen varios pero estudiaremos el ms
extendido:
Modelo E/R o Entidad/Relacin (o tambin
Entidad Interrelacin
Bases de datos
Modelos lgicos
Modelo Codasyl o en red
Modelo Jerrquico
Modelo relacional:
Tablas (relaciones)
Modelo orientado a objetos
Datos + procedimientos
Modelo objeto-relacional
Bases de datos
4
Modelo interno
Representa los datos segn el modelo
concreto de un SGBD ( Oracle, MySQL, SQL
Server,). Por lo tanto ser distinto segn el
SGBD elegido.
Por ejemplo Oracle es un SGBD relacional que
dispone de unos tipos de datos (number,
char, varchar2, long, raw, clob...)
MySQL es un SGBD relacional(int, smallint,
char, varchar, text,...)
Bases de datos
Modelado de BD
En definitiva, primero se realiza el modelo
E-R para representar la realidad que
queremos transformar en BD y a partir de
l se pasar al modelo relacional, jerrquico
o en red, que operan directamente con la
informacin que contendr la BD.
Bases de datos
5
Modelo fsico
Tablas concretas
del SGBD elegido
Bases de datos
Bases de datos
6
Modelo E/R
Entidad:
Persona, lugar, cosa, concepto o suceso real o abstracto
de inters para la BD. Es un objeto acerca del cual se
quiere almacenar informacin.
Suelen detectarse por sustantivos en plural en la
especificacin de requisitos
Un nombre de entidad solo puede aparecer una vez en
un diagrama
Relacin o Interrelacin
Correspondencia o asociacin entre una o ms
entidades.
Bases de datos
Representacin de entidades
Bases de datos
7
Tipos de Entidades
Ocurrencia de entidad: cada realizacin concreta.
Por ejemplo, de la entidad personas, una
ocurrencia sera Mara.
Tipos:
Regular o fuerte: existe por s misma,
para ser definidas no necesitan de ninguna
otra entidad, no dependen de otra entidad.
Dbil: necesita de la existencia de
otra o se dice que dependen de otra entidad
Bases de datos
Ejemplo 1
Tenemos que informatizar una lista de
clientes con sus datos personales.
Adems cada cliente puede tener
distintas direcciones de envo y de cada
una de ellas deberemos conocer la
calle, portal, piso, tfno,
Entidades: Clientes, Direcciones de
envo
DIRECCIONES
CLIENTES ENVIO
Bases de datos
8
Cmo identificar entidades
dbiles?
1 La direccin de envo est formada por
otros componentes ( atributos), podemos
pensar que puede tratarse de una entidad.
Por otro lado, cada cliente puede tener
varias direcciones.
Adems es dbil puesto que no se puede
identificar una direccin de envo si no
especificamos a qu cliente pertenece.
Bases de datos
Ejemplo 2
En una biblioteca con LIBROS y EJEMPLARES:
EJEMPLAR depende de LIBRO, y por tanto, la
desaparicin de un determinado libro de la
base de datos hace que desaparezcan tambin
todos los ejemplares de dicho libro.
Bases de datos
9
Ejemplo 3
DETALLE DE
PEDIDO PEDIDO
Bases de datos
Relacin o Interrelacin
Interrelacin:
Es una asociacin, vinculacin o
correspondencia entre dos o ms entidades.
Se identifica al localizar verbos o acciones cuyo
sujeto sea una entidad y cuyo complemento
directo o indirecto tambin lo sea. Tambin
puede tener atributos.
Las representaremos por un rombo.
Bases de datos
10
Ejemplo
IMPARTE es un tipo de interrelacin que
vincula las entidades PROFESOR y CURSO.
Bases de datos
Bases de datos
11
Grado en una Interrelacin
Nmero de entidades participantes en la relacin:
Reflexivas o grado1: conectan una entidad
consigo misma
Binarias o grado 2: enlazan dos entidades
Ternarias o grado3: enlazan tres entidades
Bases de datos
Bases de datos
12
Ejemplos
Bases de datos
Tipo de correspondencia
Tipos
1:1
1:N (N:1)
N:M
Bases de datos
13
Tipos de correspondencias
Tipos de correspondencias
Bases de datos
Bases de datos
14
Uno a muchos 1:N
Se produce cuando un elemento de A solo
puede relacionarse con uno de B pero cada
elemento de B puede relacionarse con
muchos de A.
Ejemplo: Vendedores que atienden a clientes
Bases de datos
Bases de datos
15
Cardinalidad
La cardinalidad define el n mximo y mnimo de
ocurrencias de cada tipo de entidad que
intervienen en una relacin, se representa
(nmin, nmax).
Los valores empleados son (0,1) (1,1) (0,N) (1,N),(2,N)..
Ejemplo: Autor que escribe libros
Bases de datos
Bases de datos
16
Ejemplo
Por ejemplo si un empleado pertenece a un departamento y
solo a uno, la cardinalidad para el departamento ser :
(1,1)
Si es posible que el empleado no necesite estar asignado a
ningn departamento, ser
(0,1)
Si a un departamento pertenecen uno o ms empleados y
obligatoriamente debe tener empleados, la cardinalidad de
departamento ser
(1,N)
En definitiva, para hallar la cardinalidad de una entidad A
dentro de una relacin, se fija la entidad B y calculamos las
ocurrencias de la entidad A
Bases de datos
Ejemplo
En el ejemplo un jugador tiene una cardinalidad mn de 0
(puede no estar en ningn equipo) y una mx de 1 (como
mucho est en un equipo, no puede estar en 2 a la vez).
Cada equipo tiene una cardinalidad mn de uno (en realidad
sera una cardinalidad mn ms alta, pero se anota un uno)
y una mx de n (en cada equipo hay muchos jugadores)
Bases de datos
17
N de interrelaciones.
Dos entidades pueden tener ms de
una interrelacin
Bases de datos
Atributos
Atributo: Son las caractersticas o propiedades
que tiene una entidad o una relacin. Uno de
los atributos o bien un conjunto de ellos,
servirn para identificar a un miembro de una
entidad del resto. Se llama identificador
principal
El dominio de un atributo, es el cjto de valores
que puede tomar dicho atributo.
Ej: Para el atributo Nombre su dominio sera (
Juan, Montse, Raquel,)
Bases de datos
18
Representacin de atributos
Bases de datos
Ejemplo
Bases de datos
19
Ejemplo
Atributos en interrelaciones
El atributo fecha no es ni
de la entidad Mujer ni de
la entidad Hombre sino
que es una caracterstica
de la interrelacin
Matrimonio
Bases de datos
Ejemplo
Bases de datos
20
Tipos de atributos
Multivaluados: Pueden tomar ms de un valor a lo
vez (una persona puede tener ms de un telfono);
Univaluados: toman un solo valor.
Obligatorios : puede obligarse a un atributo de una
entidad a que tome, como mnimo un valor.
Opcionales: lo son si pueden tomar un valor nulo.
(Por ejemplo un cliente puede no tener telfono)
Compuestos:
Bases de datos
Atributo multivaluado y
compuesto
El atributo multivaluado tambin
puede expresarse acabado en flecha
Bases de datos
21
Interrelaciones de
dependencia
Las interrelaciones se clasifican tambin en regulares y
dbiles: Si estn asociando dos entidades regulares, se
denominar interrelacin regular. Si asocian una entidad dbil
con una regular o dbil, se denominar dbil
Dentro del tipo de interrelacin dbil, tenemos:
Dependencia en existencia: cuando los ejemplares de
la entidad dbil no pueden existir si desaparece el ejemplar
de la entidad regular del cual dependen
Dependencia en identificacin. Cuando adems de
cumplirse la condicin anterior los ejemplares de la entidad
dbil no se pueden identificarse por s mismos, exigen
aadir el identificador principal de la entidad regular del
cual dependen.
Una dependencia en identificacin es siempre una
dependencia en existencia.
Bases de datos
Ejemplo
Bases de datos
22
Ejemplo
Bases de datos
Ejemplos
Bases de datos
23
Relaciones N-arias
Las interrelaciones de grado mayor de 2 son
bastante ms difciles de manejar que las binarias.
Casi nunca se utilizan interrelaciones de grado
igual o superior a 4.
Algunas veces es posible transformar una
interrelacin ternaria a varias binarias (lo mismo
para n=4, 5, ...) que recogen la misma semntica.
!Otras veces no es posible!
La determinacin de las cardinalidades mnimas y
mximas de cada entidad participante debe
realizarse con cuidado.
Bases de datos
Bases de datos
24
Bases de datos
Bases de datos
25
Control de redundancia
Un esquema es redundante cuando al
eliminar un elemento del mismo, no se
pierde informacin.
Se pueden deducir los datos de dicho
elemento a partir de los dems.
Bases de datos
Condiciones
Debe haber un ciclo en el esquema
Las relaciones implicadas en el ciclo son
semnticamente equivalentes, es decir,
tienen significado parecido.
Las cardinalidades deben ser tales que
se pueda eliminar una de las relaciones
sin perder informacin
Bases de datos
26
Si se cumplen estas condiciones, se tiene
un ciclo redundante, en caso contrario, no.
Dicho ciclo se debe deshacer, para ello se
elimina una de las relaciones que est
generando el ciclo.
Bases de datos
Bases de datos
27
Se trata de un ciclo redundante, porque las
relaciones habita y reside son
semnticamente equivalentes.
Una persona vive en una nica vivienda y esa
vivienda se encuentra en un nico municipio,
luego sobra la relacin reside ya que
podemos saber el municipio en el que reside
una persona a travs de la vivienda
Bases de datos
Bases de datos
28
Un animal habita en un nico pas,
ahora bien, un animal puede que no
viva en ningn parque nacional, por lo
que a travs del parque, no se puede
saber en qu pas se encuentra
Bases de datos
29
Generalizacin/Especializacin
Hay situaciones en las que es preciso dividir una
entidad en subconjuntos generalmente por dos
motivos:
Solo los miembros de la entidad que cumplen una
determinada condicin, se relacionan con otra
entidad.
Solo los miembros de la entidad que cumplen una
determinada condicin tienen ciertos atributos
innecesarios para el resto. Para representar esto
dividiremos la entidad en varias partes,
asignaremos los atributos comunes a la entidad
principal y los no comunes a la correspondiente
divisin Bases de datos
Generalizacin/Especializacin
Son un tipo de interrelacin que se utilizan para unificar
entidades agrupndolas en una entidad ms general
(generalizacin) o bien para dividir una entidad general en
entidades ms especficas (especializacin). Hoy en da a
todas se las suele llamar generalizacin.
Generalizacin:
Por ejemplo, la informacin guardada de clientes y proveedores tiene
muchos atributos comunes. Creamos una entidad empresa con dichos
atributos y dos entidades cliente y proveedor con los atributos que las
distinguen.
Especializacin
Guardamos informacin de cuentas bancarias en una entidad cuenta
pero hay cuentas corrientes y cuentas de ahorro con informaciones que
las diferencian, creamos adems dos entidades especializadas cc y ca.
Bases de datos
30
Ejemplo
Una empresa tiene varios departamentos.
Sus empleados fijos estn asignados a un
departamento pero los temporales no.
Tenemos la entidad Empleados y
departamentos pero es necesario indicar
que solo se relacionan con los
departamentos los empleados fijos.
Bases de datos
EMPLEADO Atributos
Es_un
TEMPORAL FIJO
DEPARTAMENTO
Pertenece
02/10/2012
31
Ejemplo
Una empresa dispone de empleados de
los que quiere guardar sus datos
personales, adems si el empleado es
ingeniero quiere guardar su
especialidad, si es secretario, el n de
pulsaciones y si es tcnico sus aos de
experiencia.
Bases de datos
Bases de datos
32
Atributos
EMPLEADO
comunes
(1,1)
Es_un
(0,1) (0,1)
INGENIERO TECNICO
(0,1)
SECRETARIO
Pulsaciones
Bases de datos
Generalizacin
Bases de datos
33
Generalizacin
Generalizacin: ocurre si partimos de una serie de
entidades y al estudiarlas descubrimos que todas
pertenecen al mismo conjunto.
Las entidades son totalmente heterogneas, es decir, los
atributos son diferentes.
La entidad general se llama superentidad o supertipo
las otras se denominan subentidades o subtipo.
La superentidad normalmente tiene una clave
principal distinta de las subentidades (ste sera el
detalle ms importante para diferenciarlas de las
especializaciones).
Bases de datos
Generalizacin
Por ejemplo, la informacin guardada de clientes y
proveedores tiene muchos atributos comunes.
Creamos una entidad empresa con dichos atributos
y dos entidades cliente y proveedor con los
atributos que las distinguen.
Bases de datos
34
Generalizacin
Bases de datos
Especializacin
Ocurre cuando partimos de una entidad
que podemos dividir en subentidades para
detallar atributos que varan en las
mismas.
Comparten clave con la superentidad y los
atributos de la superclase se heredan en
las subclases.
Bases de datos
35
Especializacin
Guardamos informacin de cuentas bancarias en una
entidad cuenta pero hay cuentas corrientes y
cuentas de ahorro con informaciones que las
diferencian, creamos adems dos entidades
especializadas cc y ca.
Bases de datos
Especializacin, generalizacin
Hablamos de:
Clase supertipo.
Clases subtipos.
Las claves:
Si es especializacin la clave del supertipo
suele ser la clave de los subtipos
Si es generalizacin la clave del supertipo
no tiene por que coincidir con la clave de
los subtipos.
Bases de datos
36
En la especializacin anterior (lo es porque la clave
la tiene la superentidad) los profesores, bedeles y
tcnicos heredan el atributo id personal,el resto son
atributos propios slo de cada entidad (trienios
pertenece slo a los profesores)
Bases de datos
Bases de datos
37
Completitud
Una especializacin es
Completa cuando todos los supertipos
forman parte de uno, al menos, de los
subtipos.
Parcial cuando alguno de los supertipos
no forma parte de ninguna de los subtipos.
Bases de datos
Exclusividad
Una especializacin es
Exclusiva cuando una ocurrencia del
supertipo puede serlo nicamente de uno
de los subtipos.
Solapada cuando una ocurrencia de un
supertipo puede serlo de ms de un
subtipo.
Bases de datos
38
Exclusiva completa
Bases de datos
Exclusiva parcial
Bases de datos
39
Solapada completa
Bases de datos
Solapada parcial
Bases de datos
40
Dimensin temporal
Es necesario establecer un mtodo semntico y grfico que
recoja el transcurso del tiempo y su influencia en la forma
en que cambian los datos.
Existen varias aproximaciones:
La ms simple la constituyen los atributos de tipo fecha asociados a
algunas entidades o interrelaciones:
Para sucesos instantneos, es decir, sin duracin, bastar con un
slo atributo de este tipo. (Por ejemplo, prstamo de libros)
Para poder almacenar hechos que transcurren en un intervalo de
tiempo determinado necesitaremos una fecha_inicio y una
fecha_fin. (Por ejemplo, reservas de hoteles)
En las bases de datos histricas,en las que una interrelacin entre
dos ejemplares concretos se pueda repetir en el tiempo, el atributo
fecha ser multivaluado.
Bases de datos
Ejemplo
Bases de datos
41