1 of 39

Tema 2.- El modelo Entidad / Relación (E/R)

Sistemas Gestores de Bases de Datos

C.F.G.S. A.S.I

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

2 of 39

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

  • Definición del Modelo Entidad/Relación (E/R).
  • Definición de Superclave.
  • Diagrama Entidad/Relación.
  • Reducción del Diagrama Entidad/Relación a Tablas.

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

3 of 39

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)

4 of 39

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)

5 of 39

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

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

ALUMNO

PROFESOR

ASIGNATURA

ESTUDIA

IMPARTE

ALUMNO

ESTUDIA

ASIGNATURA

IMPARTE

PROFESOR

Mundo Real

Representación

Entidad/Relación

6 of 39

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)

7 of 39

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)

8 of 39

2. Definición de Superclave (2)

  • Ejemplo 1:

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

Alumno

DNI

Nombre

Apellidos

Dirección

Num_Matricula

Clave Primaria

DNI

Clave Candidada

DNI

Num_Matricula

Superclave

DNI

Num_Matricula

DNI + Nombre

  • Ejemplo 2:

Empleado

Num_Empleado

Nombre

Apellidos

Salario

Num_SeguridadSocial

9 of 39

2. Definición de Superclave (3)

  • Clave de una Relación:
    • Es la concatenación de las claves primarias de las entidades que asocia.

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

ALUMNO

ASIGNATURA

ESTUDIA

DNI

COD_ASIG

DNI + COD_ASIG

10 of 39

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)

11 of 39

2. Definición de Superclave (5)

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

NOMBRE

ALUMNO

ASIGNATURA

ESTUDIA

NUM_MATR

DNI

NOTA

COD_ASIG

NOMBRE

AULA

12 of 39

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)

13 of 39

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)

14 of 39

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)

15 of 39

3. Diagrama Entidad/Relación (3)

  • Ejemplo:

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

DEPARTAMENTO

ASIGNATURA

PERTENECE

m

1

1  Una asignatura pertenece a un departamento.

m  Un departamento tiene muchas asignaturas.

16 of 39

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)

17 of 39

Resolución ejercicio E/R (1)

  • Persona

Atributos Superclave Cl.Candidata Cl.Primaria

DNI DNI DNI DNI

Nombre DNI + Apellidos

Apellidos DNI + Nombre

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

PERSONA

COCHE

NOMBRE

APELLIDOS

DNI

FECHA

COD

MARCA

MODELO

COMPRA

c

n

18 of 39

Resolución ejercicio E/R (2)

  • Coche

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

19 of 39

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:

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

1 : 1

c : c

n : n

1 : c

c : n

n : m

1 : n

c: m

m : m

1 : m

20 of 39

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:

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

VENDEDOR

ZONA

CODVEND

NOMVEND

TFNVEND

CODZONA

NUMZONA

ACTUA

21 of 39

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.

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

1

2

3

4

A

B

C

D

CODVEND

NOMVEND

TFNVEND

CODZONA

NUMZONA

1

--

--

B

--

2

--

--

A

--

3

--

--

D

--

4

--

--

C

--

22 of 39

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

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

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

1

2

3

A

B

C

D

CODVEND

NOMVEND

TFNVEND

CODZONA

CODZONA

NUMZONA

1

--

--

B

B

--

2

--

--

A

A

--

3

--

--

D

D

--

C

--

23 of 39

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

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

1

2

3

4

A

B

C

D

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)

24 of 39

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

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

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

25 of 39

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

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

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.

1

2

3

A

B

C

D

E

A

B

C

D

E

1

2

3

26 of 39

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

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

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.

A

B

C

D

E

F

1

2

3

27 of 39

  • n : n n : m m : m

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

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

28 of 39

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

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

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

29 of 39

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)

30 of 39

Ejercicio 1

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

posee

CodSucursal

Localidad

Sucursal

Dirección

CodBanco

Banco

Nombre

1

n

31 of 39

Ejercicio 2

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

NºCuenta

TipoCuenta

Cuenta

Saldo

n

m

CodCliente

Apellidos

Teléfono

Dirección

Cliente

tiene

FechaAlta

32 of 39

Ejercicio 3

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

VENDEDOR

ZONA

CODVENDE

NOMVEND

TFNVEND

CODZONA

NUMZONA

ACTUA

PERTENECE

CODCIUD

NOMCIUD

CIUDAD

1

1

1

M

33 of 39

Ejercicio 4

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

CODTEAT

DIRECT

CODORQ

NOMREOR

CELEBRA

DIRIGE

CODDIRECT

DNI

NOMBRED

INTERVIENE

1

N

N

N

M

1

TEATRO

DIRECTOR

ORQUESTA

REPRESENTACI

NOMREP

CODREPR

NOMTEAT

34 of 39

Ejercicio 5

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

NOMPERS

ENVIAN

HOTEL

FSALIDA

FENTRADA

DIRHOTEL

NOMHOTEL

CODHOTEL

N

1

N

1

PERSONA

DNI

PAIS

SE ALOJAN

TELEF

NOMPAIS

CODPAIS

35 of 39

Ejercicio 6

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

NºDEP

NOMDEP

LOCAL

NºEMPLE

NOMEMPLE

SALARIO

1

M

C

N

PERTENECE

JEFE

DEPARTAMENTO

EMPLEADO

36 of 39

Ejercicio 7

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

FechaNac

TRABAJA

FechaTrab

CodHotel

Nomhotel

CodProv

NombProv

CodCli

DNICli

NombCli

ESTA

M

M

1

M

N

M

CLIENTE

PROVINCIA

NACIO

EMPLEADO

HOTEL

CodEmpl

NomEmp

37 of 39

Ejercicio 8

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

FechaNac

NomEmp

CodEmpl

TRABAJA

FechaTrab

CodHotel

Nomhotel

CodProv

NombProv

CodCli

DNICli

NombCli

ESTA

M

N

1

M

1

M

EMPLEADO

HOTEL

CLIENTE

NACIO

PROVINCIA

38 of 39

Ejercicio 9

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

ColorPelo

ColorPiel

1

1

FechEmisión

posee

DNI

Dirección

Apellidos

Nombre

tiene por padre

c

m

Persona

CodRasgos

ColorOjos

Rasgos

Estatura

39 of 39

Ejercicio 10

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

M

M

1

1

AlumnosMatriculados

Cursos

realiza

CodCurso

Nombre

FechaInicio

CodMat

Especialidad

Dni

Nombre

Alumnos

Apellidos

Dirección

se matricula

FechaMatricula