Capitulo 3: Diseño de base de datos y

Anuncio
Capitulo 3: Diseño de base de datos y
el modelo Entidad-Relación
Capitulo 3: Modelo Entidad-Relación
 Modelado
 Restricciones
 Diagramas entidad-relación
 Aspectos del diseño entidad-relación
 Conjunto de entidades débiles
 Características del modelo entidad-relación extendido
 Diseño de una base de datos para un banco
 Reducción a esquemas relacionales
 Otros aspectos del diseño de base de datos
 UML
Visión general del proceso de diseño
 Creación de Aplicaciones de Bases de Datos

Diseño del esquema de bases de datos

Diseño de los programas que tienen acceso a los datos y los actualizan

Diseño del esquema de seguridad para controlar el acceso a los datos.

Las necesidades de los usuarios desempeñan un papel central en el
proceso de diseño.

En el presente apartado nos centraremos en el diseño del esquema de la
base de datos.
 Fases del proceso de diseño

Fase Inicial: Especificación de requisitos de usuario

Fase de diseño conceptual: Diagrama Entidad-Relación y Especificación
de requisitos funcionales

Fase de diseño lógico

Fase de diseño físico
 Alternativas de diseño

Redundancia

Incompletitud
El modelo entidad-relación
 Facilita el diseño de bases de datos
 Permite la especificación de un esquema de
empresa que representa la estructura lógica
global de la base de datos
 Es un modelo de datos semántico –
Representación del significado de los datos
 Emplea tres conceptos básicos: Los
conjuntos de entidades, los conjuntos de
relaciones y los atributos.
Conjunto de entidades
 Una entidad es un objeto que existe y es claramente diferenciable de
otros objetos.

Ejemplo: personas, lugares, productos, compañías, eventos,
plantas y similares

Concretas o abstractas
 Las entidades tienen atributos

Ejemplo: las personas tienen nombres y dirección
 Un conjunto de entidades son varias entidades del mismo tipo que
comparten las mismas propiedades o características (Atributos).

Ejemplo: conjunto de todas las personas, compañías, arboles, días
festivos
 Los conjuntos de entidades no son necesariamente disjuntos.
 Cada entidad se representa mediante un conjunto de atributos
(Propiedades descriptivas).
Conjunto de entidades cliente y préstamo
Id_cliente
nombre_ calle_
cliente cliente
ciudad_
cliente
numero_
cuenta
importe
Conjunto de relaciones
 Una relación es una asociación de dos o varias
entidades
Ejemplo: se puede definir una relación que asocie al cliente López con
él préstamo P-15. Esta relación especifica que López es un cliente con
el préstamo número P-15.
 Un conjunto de relaciones es un conjunto de
relaciones del mismo tipo.
 Formalmente es una relación matemática con n  2
entidades que pertenecen a un conjuntos de
entidades (posiblemente no distintos)
{(e1, e2, … en) | e1  E1, e2  E2, …, en  En}
donde (e1, e2, …, en) es una relación

Ejemplo:
(López, P-15)  impositor
Conjunto de relaciones prestatario
Conjunto de relaciones (Cont.)
 Una relación puede también tener atributos denominados
atributo descriptivos.
Grado del conjunto de relaciones
 El numero de conjunto de entidades que participan en un
conjunto de relaciones se denomina grado de ese conjunto de
relaciones.
 Las relaciones donde participan dos conjuntos de entidades se
denominan binarias (o de grado 2). La mayoría del conjunto
de relaciones son binarias. Pueden existir conjunto de
relaciones n-arias.

Ejemplo: considérese los conjuntos de entidades empleado,
sucursal y trabajo. Un ejemplo de relación ternaria con este
conjuntos de entidades seria que el empleado Santos trabaja de
Director en la Sucursal de Navacerrada
 No son muy frecuentes las relaciones mas de dos conjuntos de
entidades. Si es el caso debemos expresarlas en conjunto de
relaciones binarias.
Atributos
 Una entidad es representada por un conjunto de
atributos, que son propiedades poseídas por todos
los miembros de un conjunto de entidades.
Ejemplo:
cliente= (id_cliente, nombre_cliente, calle_cliente, ciudad_cliente)
préstamo = (numero_prestamo, importe )
 Dominio – el conjunto de los valores permitidos para
un cierto atributo.
 Tipos de atributos:

Atributos simples y compuestos.

Atributos monovalorados y multivalorados

Atributos Derivados
 Puede
ser calculado por otros atributos
Restricciones – correspondencia de cardinalidad
 Expresa el numero de entidades a las que otra
entidad se puede asociar mediante un conjunto de
relaciones.
 Resulta muy útil para describir conjuntos de
relaciones binarias.
 Para conjuntos de relaciones binarias la
correspondencia de cardinalidad pueden ser las
siguientes:

Uno a uno

Uno a varios

Varios a uno

Varios a varios
Correspondencia de cardinalidad
Uno a uno
Uno a varios
Nota: algunos elementos en A y B pueden no tener ninguna
correspondencia con elementos del otro conjunto.
Correspondencia de cardinalidad
Varios a uno
Varios a Varios
Nota: algunos elementos en A y B pueden no tener ninguna
correspondencia con elementos del otro conjunto.
Claves
 Una superclave es un conjunto de uno o mas
atributos que, tomados conjuntamente, permiten
identificar de forma univoca una entidad del
conjunto de entidades.
 Una clave candidata de un conjunto de entidades
es una superclave mínima

Id_Cliente es una clave canidata para cliente

Numero_cuenta es clave candidata para cuenta
 Sin embargo, pueden existir varias claves
candidatas, una de las claves candidatas es
seleccionada como clave primaria.
Claves para conjunto de relaciones
 La combinación de las claves primarias del conjunto
de entidades participantes forman una superclave del
conjunto de relaciones

(id_cliente, numero_cuenta) es una superclave
para impositor
 Podemos considerar la correspondencia de
cardinalidad del conjunto de relaciones para
determinar cuales serian las claves candidatas
 Se necesita considerar la semántica del conjunto de
relaciones en la selección de la clave primaria en el
caso que dispongamos de mas de una clave
candidata.
Diagramas Entidad-Relación
 Los rectángulos representan conjunto de entidades.
 Los rombos representan conjunto de relaciones.
 Las líneas enlazan atributos con conjunto de entidades y conjunto de
entidades con conjunto de relaciones.
 Las elipses representan los atributos

Elipses dobles representan atributos multivalorados

Elipses discontinuas denotan atributos derivados.
 Un atributo subrayado indica que es la clave primaria
Diagrama E-R con atributos compuestos,
multivalorados, y derivados
Conjunto de relaciones con atributos
Roles
 Las etiquetas “director” y “trabajador” son llamadas roles; especifica
como las entidades empleado interactúan vía el conjunto de
relaciones “trabaja_para”.
 Los roles se indican en un diagrama E-R por etiquetas en las líneas
que conectan los rombos a los rectángulos.
 Los roles son opcionales, y son usados para mejorar la claridad de la
semántica de la relación.
Restricciones de cardinalidad
 Expresamos restricciones de cardinalidad con una línea dirigida (),
que significa “uno”, o una línea no dirigida (—), que significa “varios”
entre el conjunto de relaciones y el conjunto de entidades.
 Relación uno a uno:

Un cliente esta asociado con al menos un préstamo vía la relación
prestatario.

Un préstamo esta asociado con al menos un cliente vía
prestatario.
Relación de uno a muchos
 En la relación uno-a-muchos un préstamo es
asociado con al menos un cliente vía prestatario, un
cliente es asociado con varios (incluyendo 0)
prestamos vía prestatario.
Relación de muchos a uno
 En una relación muchos-a-uno un préstamo es
asociado con varios (incluyendo 0) clientes vía
prestatario, un cliente esta asociado con al menos un
préstamo vía prestatarios
Relación de muchos a muchos
 Un cliente es asociado con varios (posiblemente 0)
prestamos vía prestatario.
 Un préstamo esta asociado con varios
(posiblemente 0) clientes vía prestatario
Participación de un Conjunto de Entidades en un
Conjunto de Relaciones
 Participación Total (indicado por doble línea): Cada entidad en el
conjunto de entidades participan en al menos una relación en el
conjunto de relaciones.

Ejemplo la participación de préstamo en prestatario es total.

Cada préstamo debe tener un cliente asociado a esté, vía
prestatario.
 Participación Parcial (indicado por una línea simple): Algunas
entidades pueden no participar en algunas relaciones del conjunto de
relaciones.

Ejemplo la participación de cliente en prestatario es parcial.
Notaciones alternativas para limites de Cardinalidad
 Los limites de Cardinalidad también expresan restricciones de
participación
Diagrama E-R con una relación ternaria
Restricciones de cardinalidad en
relaciones ternarias
 La forma de hallar cardinalidades en las relaciones ternarias es fijar una
combinación de elementos en dos de los extremos de la relación y obtener
lógicamente las cardinalidades mínima y máxima en el otro extremo libre.
 Ejemplo: el título de un libro, un autor y una editorial se relacionan las tres
mediante la acción de publicar el libro (en un año concreto, con un ISBN y
con un determinado número de páginas en la edición). Para determinar las
cardinalidades hay que preguntarse por:

Cuántos autores puede tener un determinado libro publicado en una
determinada editorial(cardinalidad en el extremo de la entidad autor).

Cuántos libros puede tener un determinado autor, publicados en una
determinada editorial (cardinalidad en el extremo de la entidad libro).

En cuántas editoriales puede un determinado autor publicar un mismo
libro (cardinalidad en el extremo de la entidad editorial).
Cuestiones de diseño
 Uso de un conjunto de entidades vs. atributos
Seleccione principalmente los que dependen de la estructura
de la empresa que esta siendo modelada y con la semántica
asociada con el atributo en cuestión.
 Uso de un conjunto de entidades vs. conjunto de
relaciones
Una posible guía es diseñar un conjunto de relaciones que
describan una acción que ocurre entre dos entidades.
 Conjunto de relaciones Binarias versus n-arias
Siempre es posible reemplazar un conjunto de relaciones no
binarias (n-aria, parar n > 2) por un numero de diferentes
conjuntos de relaciones binarias, un conjunto de relaciones narias muestra mas claramente que varias entidades participan
en una simple relación.
 Indicar atributos a las relaciones
Relaciones Binarias Vs. No-Binarias
 Algunas relaciones que parecen ser no binarias se
pueden representar mejor usando relaciones
binarias.

Ejemplo. Una relación ternaria padre que
relaciona un hijo con su padre y su madre. Sin
embargo se podría representar por dos relaciones
padre y madre.
Usando
dos relaciones binarias permitirán
información parcial (ejemplo solo se conocerá
la madre)

Pero hay algunas relaciones que son
naturalmente no binarias
Conversión de relaciones de forma Nobinaria a binaria

En general, cualquier relación no-binaria puede ser representado usando
relaciones binarias creando un conjunto de entidades artificiales.

Remplazar R entre el conjunto de entidades A, B y C por un conjunto de
entidades E, y tres conjuntos de relaciones:
1. RA, relacionando E y A
2.RB, relacionando E y B
3. RC, relacionando E y C

Crear un atributo identificador especial para E

Adicionar algunos atributos de R a E

Para cada relación (ai , bi , ci) en R, crear
1. una nueva entidad ei en el conjunto de entidades E
2. agregar (ei , ai ) a RA
RC
3. agregar (ei , bi ) a RB
4. agregar (ei , ci ) a
Conversión de relaciones no-binarias
(Cont.)
 También es necesario trasladar restricciones

Trasladar todas las restricciones, puede no ser posible

Puede haber instancias en el esquema trasladado que no
pueden corresponder a alguna instancia de R

Ejercicio: agregar restricciones a las relaciones RA, RB y
RC para asegurar que una entidad nuevamente creada
corresponda exactamente a una entidad en cada conjunto
de entidades A, B y C.
 Podría no haber una forma de traducir restricciones en la relación
ternaria en restricciones sobre relaciones binarias. Por ejemplo,
considérese una restricción que dice que R es varios a uno de A,
B a C; es decir, cada par de entidades de A y B se asocia con a
lo sumo una entidad C. Esta restricción no se puede expresar
usando restricciones de cardinalidad sobre los conjuntos de
relaciones RA, RB y RC.
Ubicación de los atributos de las relaciones
 La relación de cardinalidad de una relación puede afectar a la
ubicación de sus atributos. Por tanto los atributos de los
conjuntos de relaciones uno a uno o uno a varios pueden estar
asociados con uno de los conjunto de entidades participantes.

Los atributos de un conjunto de relaciones uno a varios solo se pueden
recolocar en el conjunto de entidades de la parte “varios” de la relación.

Para los conjuntos de relaciones uno a uno, los atributos de la relación se
pueden asociar con cualquiera de las entidades participantes.

Para los conjunto de relaciones varios a varios, los atributos de la relación
solo pueden pertenecer al conjunto de relaciones.
Conjunto de entidades débiles
 Puede que un conjunto de entidades no tenga suficientes atributos para
formar una clave primaria. Ese conjunto de entidades se denomina
conjunto de entidades débiles.
 Para que un conjunto de entidades débiles tenga sentido, debe estar
asociado con otro conjunto de entidades, denominado conjunto de
entidades identificadoras o propietarias (entidades fuertes).

La relación identificadora es varios a uno del conjunto de entidades
débiles al conjunto de entidades identificadoras y la participación
del conjunto de entidades débiles en la relación es total.

La relación identificadora se indica con un rombo con líneas
dobles y un rectángulo con líneas dobles indican a los conjunto de
entidades débiles.
 El discriminante (o clave parcial) de un conjunto de entidades débiles
es un conjunto de atributos que permiten hacer la distinción entre todas
las entidades de un conjunto de entidades débiles.
 La clave primaria de un conjunto de entidades débiles se forma con la
clave primaria del conjunto de entidades identificadoras y el
discriminante del conjunto de entidades débiles.
Conjunto de entidades débiles (Cont.)
 Representaremos a un conjunto de entidades débiles con
rectángulos dobles.
 Subrayaremos el discriminante de un conjunto de entidades
débiles con una línea punteada.
 Numero_pago – discriminante del conjunto de entidades pago
 La clave primaria para pago – (numero_prestamo,
numero_pago)
Ejemplos de entidades débiles
 Podemos modelar las ofertas de asignaturas en
una universidad. La misma asignatura se puede
ofrecer en diferentes cursos y, dentro de cada
curso, puede haber varios grupos para la misma
asignatura. Por tanto, se puede crear el conjunto
de entidades débiles oferta_asignatura, que
dependen existencialmente de asignatura; las
diferentes ofertas de la misma asignatura se
identifican mediante curso y numero_grupo, que
forman un discriminante pero no una clave
primaria.
Características del modelo E-R extendido
 Especialización
 Generalización
 Herencia de atributos
 Restricciones a las generalizaciones
 Agregación
Características del modelo E-R extendido:
Especialización
 Los conjuntos de entidades pueden incluir subgrupos de
entidades que se diferencian de alguna forma de las demás
entidades del conjunto.
 Un subconjunto de entidades de un conjunto de entidades
puede tener atributos que no sean compartidos por todas las
entidades del conjunto de entidades.
 El proceso de establecimiento de subgrupos dentro del
conjunto de entidades se denomina especialización. Ejemplo
cliente y empleado es una especialización de persona. O
cuenta corriente y cuenta de ahorro son una especialización de
cuenta.
 La especialización se representa mediante un componente
triangular etiquetado con ES. Cliente “es” una persona.
 La relación ES también se puede denominar relación
superclase-subclase.
Ejemplo de especialización
Características del modelo E-R extendido:
Generalización
 El refinamiento a partir del conjunto de entidades inicial en
sucesivos niveles de subgrupos de entidades representa un
proceso de diseño descendente. El proceso de diseño
también puede proceder de forma ascendente, en la que
varios conjunto de entidades se sintetizan en conjunto de
entidades de nivel superior basado en características
comunes.
 Existen analogías entre conjunto de entidades en el sentido de
que tienen atributos que, conceptualmente, son iguales. Esta
similitud se puede expresar mediante la generalización que
es una relación de contención que existe entre los conjuntos
de entidades.
 En términos de diagramas E-R no se distinguen entre
generalización o especialización.
Especialización y generalización (Cont.)
 La generalización es una inversión simple de la
especialización.
 La especialización parte de un único conjunto de
entidades; destaca las diferencias entre las
entidades del conjunto mediante la creación de
diferentes conjuntos de entidades de nivel inferior.
 La generalización parte del reconocimiento de que
varios conjunto de entidades comparten algunas
características comunes. Con base en esas
similitudes se sintetizan los conjuntos de entidades
en un solo conjunto de nivel superior.
Herencia de atributos
 Una propiedad crucial de las entidades de nivel
superior e inferior creadas mediante la
especialización y la generalización es la herencia
de atributos.
 Se dice que los atributos de los conjuntos de
entidades de nivel superior son heredados por los
conjuntos de entidades de nivel inferior.
 Los conjuntos de entidades de nivel inferior también
heredan la participación en los conjuntos de
relaciones en los que participa su entidad de nivel
superior.
Restricciones a las generalizaciones y
especializaciones
 Un tipo de restricción implica la determinación de
las entidades que pueden formar parte de un
conjunto de entidades de nivel inferior dado.
Esa pertenencia puede ser una de las siguientes:

Definida por condición
La
pertenencia se evalúa en función al
cumplimiento de una condición por la entidad.
Condición
“tipo de cuenta” de ahorros o
corriente

Definida por el usuario
El
usuario de la base de datos asigna las
entidades al conjunto de entidades dado.
Restricciones a las generalizaciones y
especializaciones (cont.)
 Un segundo tipo de restricciones tiene relación con la
pertenencia de las entidades a más de un conjunto de
entidades de nivel inferior. Pueden se las siguientes:

Disjuntos
 La
restricción sobre la condición de disjunción exige que
cada entidad no pertenezca a mas de un conjunto de
entidades de nivel inferior.
 Cuenta

de ahorro o cuenta corriente pero no ambas.
Solapados
 En
las generalizaciones solapadas la misma entidad
puede pertenecer a mas de un conjunto de entidades de
nivel inferior de la generalización.
 La
generalización es solapada cuando los empleados
también pueden ser clientes.
Restricciones a las generalizaciones y
especializaciones (cont.)
 Una última restricción, la restricción de completitud sobre
una generalización o especialización, especifica si una entidad
del conjunto de entidades de nivel superior debe pertenecer,
al menos, a uno de los conjuntos de entidades de nivel
inferior. Esta restricción puede ser de dos tipos:

Generalización o especialización total: Cada entidad del
nivel superior debe pertenecer a un conjunto de entidades
de nivel inferior.
 Una
entidad Cuenta debe ser de ahorro o corriente
necesariamente

Generalización o especialización parcial: Puede que
alguna entidad del nivel superior no pertenezca a ningún
conjunto de entidades de nivel inferior.
 Empleado
 Docente
y grupos o equipos de trabajo
y comisiones de trabajo
Agregación

Considere la relación ternaria trabaja_en, diapositiva 25

Supóngase ahora que se desea registrar al director responsable de
las tares realizadas por cada empleado de cada sucural.

Es decir se desea registrar al director responsable de las
combinaciones (empleado, sucursal, trabajo).
Agregación (Cont.)
 Parece que los conjuntos de relaciones trabaja_en y dirige se
pueden combinar en un solo conjunto de relaciones. No
obstante, no se deben combinar en una sola relación, ya que
puede que algunas combinaciones empleado, sucursal, trabaja
no tengan director.
 También se produce redundancia.
Agregación (Cont.)
 Una de las limitantes del modelo E-R es que no es posible
expresar relaciones entre relaciones.
 La agregación en una abstracción a través de la cual las
relaciones se tratan como entidades de nivel superior.
Alternativas de diseño E-R
 A continuación se sugiere la manera en que el diseñador de
base de datos puede escoger entre una amplia gama de
alternativas.
 Si usar atributos o conjuntos de entidades para representar
un objeto.
 Si los conceptos del mundo real se expresan mejor mediante
conjunto de entidades o mediante conjunto de relaciones.
 Si utilizar relaciones ternarias o pares de relaciones binarias
 Si usar conjunto de entidades fuertes o débiles.
 Si es adecuado utilizar la generalización o especialización.
 Si es adecuado usar la agregación.
Requisitos de datos de la base de bancaria
 El banco esta organizado en sucursales. Cada sucursal esta ubicada
en una ciudad concreta y se identifica con un nombre único. El banco
supervisa los activos de cada sucursal.
 Los clientes del banco se identifican se identifican mediante su valor
de id_cliente. El banco almacena cada nombre de cliente, y la calle y
la ciudad donde vive cada cliente. Los clientes pueden tener cuentas
y pueden solicitar prestamos. Cada cliente puede estar asociado con
un empleado del banco concreto, que puede actuar como
responsable de prestamos o como asesor personal de ese cliente.
 Los empleados del banco se identifican mediante su valor de
id_empleado. La administracion del banco almacena el nombre y el
numero de teléfono de cada empleado, el nombre de los
subordinados de cada empleado, y el número id_empleado del jefe de
cada empleado. El banco también mantiene un registro de la fecha de
incorporación a la empresa del empleado, y por tanto, de su
antigüedad.
Requisitos de datos de la base de bancaria (cont.)
 El banco ofrece dos tipos de cuentas: cuentas de ahorro y cuentas
corrientes. Las cuentas pueden tener como titular a más de un cliente,
y cada cliente puede tener mas de una cuenta. Cada cuenta tiene
asignado un numero de cuenta único. El banco mantiene un registro
del saldo de cada cuenta y de la fecha mas reciente en que cada
titular de la cuenta tuvo acceso a es cuenta. Además cada cuenta de
ahorro tiene un tipo de interés y para cada cuenta corriente se
registran los descubiertos generados.
 Cada préstamo se genera en una sucursal concreta y pueden
solicitarlo uno o mas clientes. Cada préstamo se identifica mediante
un numero de préstamo único. Para cada préstamo el banco
mantiene un registro del importe del préstamo y de los pagos
realizados y pendientes. Aunque los números de los pagos del
préstamo no identifican de forma únivoca cada pago entre los de
todos los prestamos del banco, el numero de pago si que identifica
cada pago de un préstamo concreto. De cada pago se registran la
fecha y el importe.
Conjunto de entidades de la base de datos bancaria
 El conjunto de entidades sucursal, con los atributos nombre-sucursal,
ciudad-sucursal y activo.
 El conjunto de entidades cliente, con los atributos id-cliente, nombre-
cliente, calle-cliente y ciudadcliente. Un posible atributo adicional es
nombre_asesor.
 El conjunto de entidades empleado, con los atributos id-empleado,
nombre-empleado, númeroteléfono, sueldo y jefe. Algunas
características descriptivas adicionales son el atributo multivalorado
nombre-subordinado, el atributo base fechacomienzo y el atributo
derivado antigüedad.
 Dos conjuntos de entidades cuenta —cuenta-ahorro y cuenta-
corriente— con los atributos comunes número-cuenta y saldo;
además, cuenta-ahorro tiene el atributo tipo-interés y cuenta-corriente
tiene el atributo descubierto.
 El conjunto de entidades préstamo, con los atributos número-
préstamo, importe y sucursal-origen.
 El conjunto de entidades débiles pago-préstamo, con los atributos
número-pago, fecha-pago e importe-pago.
Conjunto de relaciones de la base de datos bancaria
 prestatario, un conjunto de relaciones varios a varios entre cliente y
préstamo.
 préstamo-sucursal, un conjunto de relaciones varios a uno que indica
la sucursal en que se ha originado un préstamo.
 pago-préstamo, un conjunto de relaciones uno a varios de préstamo a
pago, que documenta que se ha realizado un pago de un préstamo.
 impositor, con el atributo de relación fecha-acceso, un conjunto de
relaciones varios a varios entre cliente y cuenta, indicando que un
cliente posee una cuenta.
 Asesor_personal, con el atributo de relación tipo, un conjunto de
relaciones varios a uno que expresa que un cliente puede ser
aconsejado por un empleado del banco, y que un empleado del banco
puede aconsejar a uno o más clientes.
 trabaja-para, un conjunto de relaciones entre entidades empleado con
papeles que indican jefe y trabajador; la correspondencia de
cardinalidades expresa que un empleado trabaja para un único jefe, y
que un jefe supervisa uno o más empleados.
Diseño de una base de datos para un banco
Símbolos usados en la notación E-R
Símbolos usados en la notación (Cont.)
Reducción del modelo E-R al
esquema relacional
 Para cada conjunto de entidades y conjunto de relaciones
del modelo E-R tienen un esquemas de relación.
 El modelo E-R y Relacional son representaciones abstractas y
lógicas de las empresas del mundo real.
Representación de los conjuntos de
entidades fuertes
 Sea E un conjunto de entidades fuertes con los atributos a1,
a2, …an. Esta entidad se representa con un esquema E con n
atributos.
 La clave primaria del esquema derivado es la misma clave
primaria del conjunto de entidades fuertes.
 Cada tupla representa a una entidad del conjunto de
entidades.
sucursal= (nombre_surcursal, ciudad_sucursal, activos)
Representación de los conjuntos de
entidades débiles

Sea A un conjunto de entidades débiles con atributos a1, a2, …., an. Sea B el
conjunto de entidades fuertes del que A depende. La clave primaria de B
consiste en b1, b2, …., bn.

El esquema de la relación que representa al conjunto de entidades débiles A
tiene una columna por cada miembro del conjunto {a1,a2,.., an}U{b1, b2, …,
bn}.

Clave primaria es clave primaria de B y el discriminante de A.

También se crea una restricción de clave externa para la relación A que
especifica que los atributos (b1, b2, …, bn) hacen referencia a la clave
primaria de la relación B.
préstamo = (numero_prestamo, importe)
pago = (numero_prestamo, numero_pago, fecha_pago, importe_pago)
Representación de los conjuntos de
relaciones
 Sea R un conjunto de relaciones
 Sean a1, a2, …., an. Las claves primarias de cada uno de los
conjuntos de entidades participantes en la relación R.
 Sean b1, b2, …, bn. Los atributos descriptivos de R.
 El conjunto de relaciones se representa con el Esquema
conformado por los atributos {a1, a2,…,an} U {b1, b2, .., bn}.
 La clave primaria de un conjunto de relaciones binaria son
todos los atributos de las claves primarias de todos los
conjuntos de entidades participantes en la relación.
 Para el conjunto de relaciones uno a uno, varios a uno y uno a
varios, este conjunto de atributos de claves primarias resulta
mayor del que hace falta en la clave primaria.
Clave primaria para las relaciones
de varios a varios
 Para relaciones binarias varios a varios la unión de los
atributos clave primaria de los conjuntos de entidades
participantes pasara hacer la clave primaria del esquema de la
relación.
cliente = (id_cliente, nombre_cliente, calle_cliente, ciudad_cliente)
préstamo = (numero_prestamo, importe)
prestatario = (id_cliente, numero_prestamo)
Clave primaria para las relaciones
uno a uno
 La clave primaria de cualquiera de los conjuntos de entidades
puede escoger como clave primaria del esquema de la
relación.
 La elección del conjunto de entidades de entre los
relacionados por el conjunto de relaciones puede realizarse de
manera arbitraria.
Clave primaria para las relaciones
uno a varios o viceversa
 Para los conjuntos de relaciones binarias varios a uno ó uno a
varios la clave primaria del conjuntos de entidades de la parte
“varios” de la relación sirve de clave primaria del esquema de
la relación.
Clave primaria para las relaciones
n-arias sin flechas
 Para los conjuntos de relaciones n-arias sin flechas en los
segmentos, la unión de los atributos de clave primaria de los
conjuntos de entidades participantes pasa hacer la clave
primaria del esquema de la relación.
Clave primaria para las relaciones
n-arias con una flecha
 Para los conjuntos de relaciones n-arias con una flecha en uno
de los segmentos, las claves primarias de los conjuntos de
entidades que no están en el lado de la “flecha” del conjunto
de relaciones sirven de clave primaria del esquema de la
relación.
 Recuérdese que solo se permite una flecha saliente por
conjunto de relaciones.
Restricciones de clave externa en esquemas del
conjunto de relaciones
 También se crean restricciones de clave
externa para la relación R resultante del
conjunto de relaciones.
 Para cada conjunto de entidades E,
relacionado con el conjunto de relaciones R
se crea una restricción de clave externa de
la relación R con los atributos de R que eran
atributos de clave primaria de E que hacen
referencia a la clave primaria de la relación
que representa E.
Redundancia de los esquemas
 El conjunto de relaciones que enlazan los conjuntos
de entidades débiles con su conjunto de entidades
fuertes es un esquema redundante y no es
necesario representarlo.
 Estas relaciones son varios a uno y no tienen
atributos descriptivos.
 En general, el esquema de los conjuntos de
relaciones que enlazan los conjuntos de entidades
débiles con su conjunto correspondiente de
entidades fuertes es redundante y no hace falta que
este presente en el diseño de la base de datos
relacional.
Combinación de esquemas
 Considere un conjunto AB de relaciones varios a uno del
conjunto de entidades A al conjunto de entidades B.
 De estos conjuntos se consiguen tres esquemas de relación A,
B, AB. Además que la participación de A e la relación es total.
Entonces se puede combinar los esquemas A y AB. Unión de
ambos esquemas.
 La clave primaria del esquema combinado se toma del
conjunto de entidades en cuyo esquema se ha fusionado.
 En el caso de relaciones uno a uno, el esquema de la relación
del conjunto de relaciones puede combinarse con el esquema
de cualquiera de los conjunto de entidades.
 Se puede combinar esquemas aunque la participación sea
parcial, usando valores nulos.
 También se añaden las restricciones de clave externa
Caso de relaciones 1 a 1
 En caso de relaciones uno a uno, el
esquema de relación del conjunto de
relaciones puede combinarse con el
esquema de cualquiera de los
conjuntos de entidades participantes.
Atributos compuestos
 Los atributos compuestos se tratan mediante
la creación de un atributo diferente para
cada uno de los atributos componentes; y no
se crea ningún atributo para el atributo
compuesto
Atributos multivalorados
 Para cada atributo multivalorado M se crea un
esquema de relación E con un atributo A que
corresponde a M, y a los atributos correspondiente a
la clave primaria del conjunto de entidades o de
relaciones del que M es atributo.
 Se crea una clave primaria de esquema de la
relación consistente de todos los atributos del
esquema.
 Además, se crea una clave externa para el
esquema de la relación, con el atributo generado a
partir de la clave primaria del conjunto de entidades
que hace referencia a la relación generada a partir
del conjunto de entidades.
Representación de la
generalización opción 1

Se crea un esquema para la entidad del nivel superior y para
cada uno de las entidades con sus respectivos atributos.

Los atributos de clave primaria del nivel superior pasa a ser
atributos de clave primaria de los esquemas del nivel inferior.

Se produce restricciones de clave externa
Representación de la
generalización opción 2

Si la generalización es disjunta y completa.

Solo se crea esquemas de relación para cada una de las
entidades de nivel inferior y no para el nivel superior.

Los atributos del nivel superior se colocan en el esquema de
nivel inferior

La clave primaria de los esquemas es la clave primaria de la
entidad superior

Este método tiene la dificultad de definir las restricciones de
claves externas. Esto sucede cuando el conjunto de
entidades de nivel superior participa en una relación.
Representación de la agregación
 Se transforman los conjuntos de relaciones y entidades
siguiendo las reglas anteriores.
 Las reglas vistas anteriormente para la creación de
restricciones de clave primaria y de clave externa para los
conjuntos de relaciones se pueden aplicar también a los
conjuntos de relaciones que incluyan agregación. Tratando la
agregación como cualquier otra entidad.
 La clave primaria de la agregación es la clave primaria del
conjunto de relaciones que la define.
UML
UML
UML
Ejercicio de modelado del diseño conceptual
 Ejercicio 1. Construya un diagrama E-R para una compañía de
seguros de coches cuyos clientes poseen uno o más coches cada
uno. Cada coche tiene asociado un valor que va de cero al numero de
accidentes registrados.
 Ejercicio 2. la secretaria de la universidad conserva datos acerca de
las siguientes entidades: a) asignaturas, incluyendo el número, titulo,
créditos, programa, y requisitos; b) ofertas de asignaturas, incluyendo
el numero de asignatura, año, semestre, numero de sección,
profesor(es), horario y aulas; c) estudiantes, incluyendo identificador
de estudiante, nombre y programa; y d) profesores, incluyendo
numero de identificación, nombre, departamento y titulo. Además, la
matricula de los estudiantes en asignaturas y las notas concebidas a
los estudiantes en cada asignatura en la que están matriculados se
deben modelar adecuadamente. Documéntese todas las restricciones
y Construya un diagrama E-R.
Descargar