38
El modelo Entidad / Relación (E/R) El modelo Entidad/Relación (E/R) 1. Definición del Modelo Entidad/Relación (E/R). 2. Definición de Superclave. 3. Diagrama Entidad/Relación. 4. Reducción del Diagrama Entidad/Relación a Tablas.

El modelo entidad_relacion

Embed Size (px)

Citation preview

El modelo Entidad / Relación (E/R)

El modelo Entidad/Relación (E/R)

1. Definición del Modelo Entidad/Relación (E/R).

2. Definición de Superclave.

3. Diagrama Entidad/Relación.

4. Reducción del Diagrama Entidad/Relación a Tablas.

El modelo Entidad / Relación (E/R)

1. Definición del Modelo E/R (1)

El modelo E/R también llamado modelo conceptual de datos es una técnica de representación gráfica que incorpora información relativa a los datos y a la relación existente entre ellos para darnos una visión del mundo real.

Este modelo es un paso previo al futuro diseño de las bases de datos.

El modelo Entidad / Relación (E/R)

1. Definición del Modelo E/R (2)

Las características principales del modelo E/R son:

Refleja únicamente la existencia de los datos, no lo que hace con ellos.

El modelo E/R no esta orientado a aplicaciones particulares. Es independiente de las bases de datos y de los sistemas

operativos. A la hora de su concepción no debemos considerar aspectos

como espacio, almacenamiento y tiempo de ejecución. Debe estar abierto a la evolución del sistema, de tal forma que

admita las posibles incorporaciones que se produzcan o las variaciones de algunos elementos existentes.

El modelo Entidad / Relación (E/R)

1. Definición del Modelo E/R (3) El modelo E/R va a consistir en un conjunto de objetos

básicos denominados “entidades” así como las relaciones existentes entre ellos. Las entidades se representan como un rectángulo y las

relaciones mediante rombos

ALUMNO

PROFESOR

ASIGNATURA

ESTUDIA

IMPARTE

ALUMNOESTUDIA

ASIGNATURA

IMPARTEPROFESOR

Mundo Real

RepresentaciónEntidad/Relación

El modelo Entidad / Relación (E/R)

1. Definición del Modelo E/R (4)

Entidad: Se define entidad como un objeto concreto o abstracto que existe y puede distinguirse de otro y del cual se desea almacenar información.

Relación: Se define relación como una asociación sin existencia propia de varias entidades, no siendo posible que una relación participe en otra relación. La dimensión de una relación es el número de entidades que participa de ella.

El modelo Entidad / Relación (E/R)

2. Definición de Superclave (1)

Se define Superclave como un conjunto de uno o más atributos que permiten especificar de forma única una ocurrencia entidad dentro de un conjunto de ellas.

De todo este conjunto las superclaves que no pertenecen a ningún subconjunto que sea superclave se denominan “claves candidata”.

De estas claves candidatas seleccionamos una que pasará a llamarse “clave primaria” y el resto de claves candidatas se llamaran “claves secundarias”.

El modelo Entidad / Relación (E/R)

2. Definición de Superclave (2)

Alumno

DNINombreApellidosDirecciónNum_Matricula

Clave Primaria

DNI

Clave Candidada

DNINum_Matricula

Superclave

DNINum_MatriculaDNI + Nombre

Ejemplo 1:

Ejemplo 2: Empleado

Num_EmpleadoNombreApellidosSalarioNum_SeguridadSocial

El modelo Entidad / Relación (E/R)

2. Definición de Superclave (3)

Clave de una Relación:Es la concatenación de las claves primarias

de las entidades que asocia.

ALUMNO ASIGNATURA

ESTUDIA

DNI COD_ASIG

DNI + COD_ASIG

El modelo Entidad / Relación (E/R)

2. Definición de Superclave (4)

Atributo: Se define como una unidad básica e indivisible de

información acerca de una entidad o relación que sirva para identificarla o describirla.

A la hora de representar los atributos en el modelo entidad / relación utilizamos óvalos. Dentro de cada uno de los cuales tendrá el nombre del atributo. La clave primaria de la entidad vendrá subrayada.

El modelo Entidad / Relación (E/R)

2. Definición de Superclave (5)

NOMBRE

ALUMNO ASIGNATURAESTUDIA

NUM_MATR

DNI

NOTA

COD_ASIG

NOMBRE

AULA

El modelo Entidad / Relación (E/R)

2. Definición de Superclave (6) Ocurrencia, existen tres tipos de ocurrencia:

Ocurrencia de un atributo: es el conjunto de valores que puede tomar un atributo.

Ocurrencia de una entidad: es el conjunto de ocurrencias de atributos de la entidad con existencia propia o sentido.

Ocurrencia de una relación: está formada por una ocurrencia de cada entidad involucrada en la relación más la ocurrencia de atributo de esa relación.

Ejemplo página anterior: Ocurrencia de atributo: DNI Ocurrencia de Entidad: 00071 javi 6547784J Ocurrencia de Relación:00071 javi 6547784J 7 0001 inglés

El modelo Entidad / Relación (E/R)

3. Diagrama Entidad/Relación (1)

En el diagrama E/R, se va a representar las diferentes entidades y relaciones existentes en el mundo real.

Las relaciones vendrán representadas mediante verbos mientras que las entidades se representan por sustantivos que podrán actuar bien como sujetos o como complementos.

Para ver la participación de una entidad en una relación tendremos la noción de “cardinalidad de una entidad”, que mide el máximo y el mínimo de la participación de dicha entidad en la relación.

El modelo Entidad / Relación (E/R)

3. Diagrama Entidad/Relación (2) Para expresar la cardinalidad, usaremos las notaciones: 1, c, m, n

1 : Indica que cada elemento de esa entidad le corresponde un único elemento en la otra entidad, en este caso es obligatorio que participen en la relación todas las ocurrencias de esa entidad.

c : Indica que a cada elemento de la entidad le puede corresponder uno o ningún elemento de la otra entidad, es decir las ocurrencias de esa entidad no necesariamente tienen que participar en la relación, y cuando lo hagan tendrán como máximo una ocurrencia.

m : Indica que a un elemento de la entidad le puede corresponder uno o más elementos de la otra entidad, con lo cual también es obligatorio que a toda ocurrencia de dicha entidad participe en la relación.

n : Indica que a un elemento de una entidad le puede corresponder ninguno, uno o más elementos de la otra entidad. Es decir, no es obligatorio que una ocurrencia de esa entidad participe en la relación.

El modelo Entidad / Relación (E/R)

3. Diagrama Entidad/Relación (3)

Ejemplo:

DEPARTAMENTO

ASIGNATURA

PERTENECE

m

1

1 Una asignatura pertenece a un departamento.

m Un departamento tiene muchas asignaturas.

El modelo Entidad / Relación (E/R)

3. Diagrama Entidad/Relación (4) Ejercicio:

Diseñar el diagrama E/R de las entidades “Persona” y “Coche” y de la Relación “Compra”, señalando:

Las superclaves. Las claves candidatas. Las claves primarias. Los atributos de las entidades. Los atributos de la relación. Las cardinalidades.

El modelo Entidad / Relación (E/R)

Resolución ejercicio E/R (1)

PERSONA COCHE

NOMBRE

APELLIDOS

DNI

FECHA

COD

MARCA

MODELO

COMPRA

c n

PersonaAtributos Superclave Cl.Candidata Cl.Primaria

DNI DNI DNI DNI

Nombre DNI + Apellidos

Apellidos DNI + Nombre

El modelo Entidad / Relación (E/R)

Resolución ejercicio E/R (2)

CocheAtributos Superclave Cl.Candidata Cl.Primaria

COD COD COD COD

Marca Bastidor Bastidor

Modelo COD + Marca

Bastidor Bastidor + COD

El modelo Entidad / Relación (E/R)

4. Reducc. del Diagr. E/R a tablas (1) Para hacer la reducción debemos partir de las posibles

combinaciones que vamos a tener a partir de las cardinalidades. A partir de ellas convertiremos dichas relaciones en tablas del modelo relacional.

Las posibles combinaciones que vamos a tener son las siguientes:

1 : 1 c : c n : n

1 : c c : n n : m

1 : n c: m m : m

1 : m

El modelo Entidad / Relación (E/R)

4. Reducc. del Diagr. E/R a tablas (2) Los casos que vamos a ver en las diferentes

reducciones, se harán sobre el ejemplo siguiente:

VENDEDOR ZONA

CODVEND

NOMVEND

TFNVEND

CODZONA

NUMZONA

ACTUA

El modelo Entidad / Relación (E/R)

4. Reducc. del Diagr. E/R a tablas (3) 1 : 1

Un vendedor actúa en una zona y en una zona solo actúa un vendedor.

En este caso solo vamos a necesitar una tabla donde la clave primaria de la misma será cualquiera de las clases de cada entidad.

1234

ABCD

CODVEND NOMVEND TFNVEND CODZONA NUMZONA

1 -- -- B --

2 -- -- A --

3 -- -- D --

4 -- -- C --

El modelo Entidad / Relación (E/R)

c : 1 Un vendedor actúa en una zona, pero en una zona puede actuar

uno o ningún vendedor. Se necesitan dos tablas, cada una de las cuales contendrá

información relativa a una entidad con su clave primaria correspondiente.

A la tabla de la entidad que tiene cardinalidad 1, es decir la que participa obligatoriamente en la relación, se añade un atributo más: la clave de la entidad con cardinalidad c.

123

ABCD

CODVEND NOMVEND TFNVEND CODZONA CODZONA NUMZONA

1 -- -- B B --

2 -- -- A A --

3 -- -- D D --

C --

4. Reducc. del Diagr. E/R a tablas (4)

El modelo Entidad / Relación (E/R)

c : c Un vendedor puede actuar o no en una zona, y en una zona

puede actuar uno o ningún vendedor. En este caso utilizamos dos, cada una de ellas para representar

una entidad, añadiendo en la tabla de la entidad de más importancia la clave de la otra entidad.

1234

ABCD

CODVEND NOMVEND TFNVEND CODZONA CODZONA NUMZONA

1 -- -- B A --

2 -- -- D B --

3 -- -- -- C

4 -- -- A D --

4. Reducc. del Diagr. E/R a tablas (5)

El modelo Entidad / Relación (E/R)

Solución alternativa al caso c:c

Existiría otra solución que consiste en relacionar en una tercera tabla el CODVEND y el CODZONA.

Si tenemos únicamente dos tablas tenemos el inconveniente de que tenemos atributos con valores nulos.

Con la solución alternativa tenemos el inconveniente de contar con una tercera tabla.

La decisión final dependerá de la cantidad de atributos con valores nulos que se esperen almacenar en las tablas.

4. Reducc. del Diagr. E/R a tablas (6)

El modelo Entidad / Relación (E/R)

1 : m 1 : n

Un vendedor actúa en una o varias zonas y en una zona actúa un vendedor (1:m).

CODVEND NOMVEND TFNVEND CODZONA NUMZONA CODVEND

1 -- -- A -- 1

2 -- -- B -- 2

3 -- -- C -- 3

D -- 1

E -- 3

4. Reducc. del Diagr. E/R a tablas (7)

En este caso se van a necesitar dos tablas, cada una de las cuales tendrá asociada la información de cada entidad. Cada tabla tendrá por clave su clave primaria y además a la tabla de cardinalidad 1 le añadimos la clave de la otra entidad.

123

ABCDE

ABCDE

123

El modelo Entidad / Relación (E/R)

c : n c : m

Un vendedor actúa en n ó m zonas y en una zona actúa 0 ó 1 vendedor.

CODVEND NOMVEND TFNVEND CODZONA NUMZONA CODVEND

1 -- -- A -- 1

2 -- -- B --

3 -- -- C -- 1

D -- 3

E -- 2

F -- 3

4. Reducc. del Diagr. E/R a tablas (8)

En este caso se utilizan 2 tablas. Cada tabla tendrá por clave, la clave primaria de la entidad que representa y además en la tabla de cardinalidad “c” le añadimos la clave de la otra entidad.

ABCDEF

123

El modelo Entidad / Relación (E/R)

n : n n : m m : m

4. Reducc. del Diagr. E/R a tablas (9)

En este caso vamos a utilizar 3 tablas:

Dos de ellas representan la información que contenga cada una de las entidades.

La tercera contendrá las claves de cada una de las entidades. Esta tabla representará las relaciones entre las tablas anteriores.

A

B

C

D

E

F

1

2

3

El modelo Entidad / Relación (E/R)

4. Reducc. del Diagr. E/R a tablas (10)CODVEND NOMVEND TFNVEND CODZONA NUMZONA

1 -- -- A --

2 -- -- B --

3 -- -- C --

D --

E --

F --

CODZONA CODVEND

A 1

B 1

D 1

C 2

E 2

B 3

A

B

C

D

E

F

1

2

3

El modelo Entidad / Relación (E/R)

4. Reducc. del Diagr. E/R a tablas (11)

Relación con atributos Si en el diagrama E/R la Relación tiene atributos, dichos atributos

al realizar la reducción a tablas siempre se van a situar en la tabla que relacione las entidades como atributos normales.

Relaciones n – ária Cuando la relación no es binaria, sino que es n-ária es decir,

participan en ella “n” entidades, vamos a necesitar “n + 1 tablas”:

“n”: se encargará de representar la información de las “n” entidades.

“+1”: Otra tabla más que contendrá las claves de todas las entidades involucradas en la relación y en la cual vendrá representadas las distintas ocurrencias de la relación.

El modelo Entidad / Relación (E/R)

Ejercicio 1

posee

CodSucursal

LocalidadSucursal

DirecciónCodBanco

Banco

Nombre

1 n

El modelo Entidad / Relación (E/R)

Ejercicio 2

NºCuenta

TipoCuentaCuenta

Saldo

n m

CodCliente

Apellidos

Teléfono

Dirección Cliente tiene

FechaAlta

El modelo Entidad / Relación (E/R)

Ejercicio 3

VENDEDOR ZONA

CODVENDE

NOMVEND

TFNVEND

CODZONA

NUMZONA

ACTUA

PERTENECE

CODCIUD NOMCIUD

CIUDAD

1 1

1

M

El modelo Entidad / Relación (E/R)

Ejercicio 4

CODTEAT DIRECT

CODORQ

NOMREOR

CELEBRA

DIRIGE

CODDIRECT

DNI

NOMBRED

INTERVIENE

1

NNN

M 1

TEATRO DIRECTOR ORQUESTA

REPRESENTACI

NOMREP

CODREPR

NOMTEAT

El modelo Entidad / Relación (E/R)

Ejercicio 5

NOMPERS

ENVIAN

HOTEL

FSALIDA

FENTRADA

DIRHOTEL

NOMHOTEL

CODHOTEL

N 1

N

1

PERSONA

DNI

PAIS

SE ALOJAN

TELEFNOMPAIS

CODPAIS

El modelo Entidad / Relación (E/R)

Ejercicio 6

NºDEP

NOMDEP

LOCAL

NºEMPLE

NOMEMPLE

SALARIO

1 M

C N

PERTENECE

JEFE

DEPARTAMENTO EMPLEADO

El modelo Entidad / Relación (E/R)

Ejercicio 7

FechaNac

TRABAJA

FechaTrab CodHotel

Nomhotel

CodProv

NombProv

CodCli

DNICli

NombCli

ESTA

MM

1 M

N

M

CLIENTEPROVINCIA NACIO

EMPLEADO HOTEL

CodEmpl

NomEmp

El modelo Entidad / Relación (E/R)

Ejercicio 8

FechaNac

NomEmp

CodEmpl

TRABAJA

FechaTrab CodHotel

Nomhotel

CodProv NombProv

CodCli

DNICli

NombCli

ESTA

M

N

1

M 1

M

EMPLEADO HOTEL

CLIENTENACIOPROVINCIA

El modelo Entidad / Relación (E/R)

Ejercicio 9

ColorPelo ColorPiel

1 1

FechEmisión

posee

DNI

DirecciónApellidosNombre

tiene por

padre

c m

Persona

CodRasgos

ColorOjosRasgos

Estatura

El modelo Entidad / Relación (E/R)

Ejercicio 10

M M

11

AlumnosMatriculados Cursosrealiza

CodCurso Nombre FechaInicioCodMat Especialidad

Dni Nombre

Alumnos

Apellidos

Dirección

se matricula

FechaMatricula