Capitulo 3 Diseño de base de datos y el modelo Entidad-Relación

78 

Texto completo

(1)

Capitulo 3: Diseño de base de datos y

Capitulo 3: Diseño de base de datos y

el modelo Entidad-Relación

(2)

Capitulo 3: 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

(3)

Visión general del proceso de diseño

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

(4)

El modelo entidad-relación

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

(5)

Conjunto de entidades

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

(6)

Conjunto de entidades cliente y préstamo

Conjunto de entidades cliente y préstamo

(7)

Conjunto de relaciones

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) | e1E1, e2E2, …, enEn}

donde (e1, e2, …, en) es una relación

 Ejemplo:

(8)

Conjunto de relaciones prestatario

(9)

Conjunto de relaciones (Cont.)

Conjunto de relaciones (Cont.)

Una relación puede también tener atributos denominados

(10)

Grado del conjunto de relaciones

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

(11)

Atributos

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

(12)

Restricciones – correspondencia de cardinalidad

Restricciones – correspondencia de cardinalidad

Expresa el

numero de entidades

numero de entidades

a las que otra

entidad

entidad

se puede asociar mediante un

conjunto de relaciones

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

(13)

Correspondencia de cardinalidad

Correspondencia de cardinalidad

Uno a uno Uno a varios

(14)

Correspondencia de cardinalidad

Correspondencia de cardinalidad

Varios a uno Varios a Varios

(15)

Claves

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

(16)

Claves para conjunto de relaciones

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

(17)

Diagramas Entidad-Relación

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.

(18)

Diagrama E-R con atributos compuestos,

Diagrama E-R con atributos compuestos,

(19)

Conjunto de relaciones con atributos

(20)

Roles

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

(21)

Restricciones de cardinalidad

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

(22)

Relación de uno a muchos

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)

(23)

Relación de muchos a uno

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

(24)

Relación de muchos a muchos

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

(25)

Participación de un Conjunto de Entidades en un

Participación de un Conjunto de Entidades en un

Conjunto de Relaciones

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.

(26)

Notaciones alternativas para limites de Cardinalidad

Notaciones alternativas para limites de Cardinalidad

 Los limites de Cardinalidad también expresan restricciones de

(27)
(28)

Restricciones de cardinalidad en

Restricciones de cardinalidad en

relaciones ternarias

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

(29)

Cuestiones de diseño

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

n-arias muestra mas claramente que vn-arias entidades participan en una simple relación.

(30)

Relaciones Binarias Vs. No-Binarias

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)

(31)

Conversión de relaciones de forma

Conversión de relaciones de forma

No-binaria a No-binaria

binaria 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

(32)

Conversión de relaciones no-binarias

Conversión de relaciones no-binarias

(Cont.)

(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

(33)

Ubicación de los atributos de las relaciones

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

(34)

Conjunto de entidades débiles

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

(35)

Conjunto de entidades débiles

Conjunto de entidades débiles

(Cont.)

(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

(36)

Ejemplos de entidades débiles

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

(37)

Características del modelo E-R extendido

Características del modelo E-R extendido

 Especialización  Generalización

 Herencia de atributos

(38)

Características del modelo E-R extendido:

Características del modelo E-R extendido:

Especialización

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

(39)

Ejemplo de especialización

(40)

Características del modelo E-R extendido:

Características del modelo E-R extendido:

Generalización

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

(41)

Especialización y generalización (Cont.)

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

(42)

Herencia de atributos

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

(43)

Restricciones a las generalizaciones y

Restricciones a las generalizaciones y

especializaciones

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

(44)

Restricciones a las generalizaciones y

Restricciones a las generalizaciones y

especializaciones (cont.)

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

(45)

Restricciones a las generalizaciones y

Restricciones a las generalizaciones y

especializaciones (cont.)

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.

(46)

Agregación

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

(47)

Agregación (Cont.)

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.

(48)

Agregación

Agregación

(Cont.)

(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

(49)

Alternativas de diseño E-R

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.

(50)

Requisitos de datos de la base de bancaria

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

(51)

Requisitos de datos de la base de bancaria (cont.)

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

(52)

Conjunto de entidades de la base de datos bancaria

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

(53)

Conjunto de relaciones de la base de datos bancaria

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

(54)
(55)
(56)

Símbolos usados en la notación (Cont.)

(57)

Reducción del modelo E-R al

Reducción del modelo E-R al

esquema relacional

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

(58)

Representación de los conjuntos de

Representación de los conjuntos de

entidades fuertes

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.

(59)

Representación de los conjuntos de

Representación de los conjuntos de

entidades débiles

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)

(60)

Representación de los conjuntos de

Representación de los conjuntos de

relaciones

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

(61)

Clave primaria para las relaciones

Clave primaria para las relaciones

de varios a varios

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)

(62)

Clave primaria para las relaciones

Clave primaria para las relaciones

uno a uno

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

(63)

Clave primaria para las relaciones

Clave primaria para las relaciones

uno a varios o viceversa

uno a varios o viceversa

Para los conjuntos de relaciones binarias varios a uno ó uno a

(64)

Clave primaria para las relaciones

Clave primaria para las relaciones

n-arias sin flechas

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

(65)

Clave primaria para las relaciones

Clave primaria para las relaciones

n-arias con una flecha

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

(66)

Restricciones de clave externa en esquemas del

Restricciones de clave externa en esquemas del

conjunto de relaciones

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

(67)

Redundancia de los esquemas

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

(68)

Combinación de esquemas

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.

(69)

Caso de relaciones 1 a 1

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

(70)

Atributos compuestos

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

(71)

Atributos multivalorados

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

(72)

Representación de la

Representación de la

generalización opción 1

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.

(73)

Representación de la

Representación de la

generalización opción 2

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

(74)

Representación de la agregació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

(75)

UML

(76)

UML

(77)

UML

(78)

Ejercicio de modelado del diseño conceptual

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

Figure

Actualización...

Referencias

Actualización...