Clase Nro.
4: Diseño de Bases de Datos
utilizando el Modelo
Entidad-interRelación (ER)
Presentada por:
Amadís Martínez
Departamento de Computación, FaCyT
Versión: semestre 1-2025
Modelo Entidad-interRelación
• Desarrollado para facilitar el diseño conceptual de
bases de datos.
• Permite la especificación de un esquema que
representa la estructura lógica general de una base
de datos.
• Introducido por Peter Pin-Shan Chen en el artículo
titulado “The Entity-Relationship Model: Toward a
Unified View of Data” (1976).
2
Modelo Entidad-interRelación
• Modela una organización como un conjunto de
entidades, interrelaciones entre ellas y atributos.
– Entidad: un "objeto" que existe en la organización y es
distinguible de otros objetos.
– Interrelación: una asociación entre varias entidades.
– Atributo: propiedades de las entidades e interrelaciones.
• Representado gráficamente a través de un diagrama
Entidad-interRelación.
– Expresa gráficamente la estructura lógica general de una
base de datos.
3
Conjuntos Entidad
• Una entidad es un objeto que existe y se distingue de
otros objetos.
• Un conjunto entidad (entity set) es un conjunto de
entidades del mismo tipo que comparten las mismas
propiedades.
• Una entidad está representada por un conjunto de
atributos.
– Propiedades descriptivas que poseen todos los miembros
de un conjunto entidad.
4
Conjuntos Entidad
• Un subconjunto de los atributos forman una clave
primaria del conjunto entidad.
– Identifican de manera única a cada miembro del conjunto.
• Ejemplo:
5
Conjuntos Entidad
• Un conjunto entidad se representa por medio de un
rectángulo dividido en dos partes.
– En la parte superior del rectángulo se coloca el nombre del
conjunto entidad.
– En la parte inferior del rectángulo se listan los atributos del
conjunto entidad.
– Los atributos que forman parte de la clave primaria, se
subrayan.
• Ejemplo:
6
Conjuntos interRelación
• Una interRelación es una asociación entre varias
entidades.
• Ejemplo: 44553 (Peltier) advisor 22222 (Einstein)
• Un conjunto interRelación (relationship set) es una
relación matemática entre dos o más entidades, cada
una tomada de un conjunto entidad.
{(e1, e2, …, en) | e1 E1, e2 E2, …, en En}
• (e1, e2, … en) es una interrelación.
• Ejemplo: (44553, 22222) advisor
7
Conjuntos interRelación
• Ejemplo:
• El conjunto interRelación advisor denota las
asociaciones entre los estudiantes y los instructores
que actúan como sus asesores.
8
Conjuntos interRelación
• Un conjunto interRelación se representa por medio
de un rombo o “diamante”.
• Ejemplo:
9
Conjuntos interRelación
• Un conjunto interRelación puede tener uno o más
atributos asociados.
• Ejemplo: el conjunto interRelación advisor,
establecido entre los conjuntos entidades instructor
y student, puede tener el atributo date (fecha) que
registra cuándo el estudiante comenzó a estar
asociado con el consejero.
10
Conjuntos interRelación
76766 Crick 98988 Tanaka
45565 Katz 3 May 2008 12345 Shankar
10 June 2007
10101 Srinivasan 00128 Zhang
12 June 2006
98345 Kim 6 June 2009 76543 Brown
76543 Singh 30 June 2007
76653 Aoi
31 May 2007
22222 Einstein 23121 Chavez
4 May 2006
instructor 44553 Peltier
11
student
Roles en una interRelación
• Los conjuntos entidades de un conjunto interrelación
no necesariamente son distintos.
– Cada ocurrencia de un conjunto entidad “juega un rol” en
el conjunto interRelación.
• Ejemplo:
– Las etiquetas course_id y prereq_id se denominan roles.
12
Grado de una interRelación
• El grado de un conjunto interRelación se define como
el número de conjuntos entidades que participan en
el mismo.
• La mayoría de los conjuntos interRelación son
binarios o de grado dos.
– Involucran dos conjuntos entidades
• Hay ocasiones en las que es más conveniente
representar las interRelaciones como no binarias.
– Los conjuntos interRelaciones entre más de dos conjuntos
de entidades son extraños.
13
Grado de una interRelación
• Ejemplo:
– Los estudiantes (student) trabajan en proyectos (project)
de investigación bajo la guía de un instructor (instructor).
– El conjunto interRelación proj_guide es una asociación
ternaria entre student, project e instructor.
14
Atributos
• Tipos de atributos:
– Simples o compuestos
– Univaluados o multivaluados
– Almacenados o derivados
– Obligatorios u opcionales
• Dominio: conjunto de valores permitidos para cada
atributo.
15
Atributos
• Los atributos compuestos permiten dividir los
atributos en sub-partes.
composite name address
attributes
first_name middle_initial last_name street city state postal_code
component
attributes
street_number street_name apartment_number
16
Atributos
17
Restricciones estructurales
• Expresan el número de entidades a las que se puede
asociar otra entidad mediante un conjunto
interRelación.
– Restricciones de cardinalidad: especifican el número
máximo de entidades que pueden participar en el
conjunto interRelación.
– Restricciones de participación: especifican el número
mínimo de entidades que pueden participar en el conjunto
interRelación.
18
Restricciones estructurales
• Útiles para la descripción de conjuntos interRelación
binarios.
• Dado un conjunto de interRelación binario, se tienen
las siguientes restricciones de cardinalidad:
– 1 : 1 (uno a uno)
– 1 : N (uno a muchos)
– N : 1 (muchos a uno)
– M : N (muchos a muchos)
19
Restricciones estructurales
1 : 1 (uno a uno) 1 : N (uno a muchos)
20
Restricciones estructurales
N : 1 (muchos a uno) M : N (muchos a muchos)
21
Restricciones estructurales
• Las restricciones de cardinalidad se expresan
dibujando una línea dirigida (→), que significa “uno”,
o una línea no dirigida (—), que significa “muchos”,
entre el conjunto interRelación y el conjunto de
entidades.
22
Restricciones estructurales
• Ejemplo: InterRelación uno a uno entre un instructor
y un estudiante.
– Un estudiante se asocia como máximo con un instructor a
través de la interRelación advisor.
– Un instructor se asocia como máximo con un estudiante a
través de la interRelación advisor.
23
Restricciones estructurales
• Ejemplo: InterRelación uno a muchos entre un
instructor y varios estudiantes.
– Un instructor se asocia con varios (incluyendo 0)
estudiantes a través de la interRelación advisor.
– Un estudiante se asocia como máximo con un instructor a
través de la interRelación advisor.
24
Restricciones estructurales
• Ejemplo: InterRelación muchos a uno entre varios
instructores y un estudiante.
– un instructor está asociado como máximo con un
estudiante a través de la interRelación advisor.
– un estudiante está asociado con varios (incluyendo 0)
instructores a través de la interRelación advisor.
25
Restricciones estructurales
• Ejemplo: InterRelación muchos a muchos entre
varios instructores y estudiantes.
– Un instructor está asociado con varios (incluyendo 0)
estudiantes a través de la interRelación advisor.
– Un estudiante está asociado con varios (incluyendo 0)
instructores a través de la interRelación advisor.
26
Restricciones estructurales
• Dado un conjunto de interRelación binario, se tienen
las siguientes restricciones de participación:
– Total: Toda entidad en el conjunto entidad participa por lo
menos en una interRelación del conjunto de
interRelaciones.
– Parcial: Alguna entidad en el conjunto entidad puede no
participar en ninguna interRelación del conjunto de
interRelaciones.
27
Restricciones estructurales
• Ejemplo:
– La participación de estudiante en la interRelación advisor
es total (doble línea en el diagrama), todo estudiante está
asociado con algún instructor.
– La participación de instructor en la interRelación advisor es
parcial (línea simple en el diagrama), un instructor podría
no tener estudiantes asociados.
28
Restricciones estructurales
• La notación min..max permite expresar restricciones
estructurales en conjunto.
– min representa la cardinalidad minima.
– max denota la cardinalidad máxima.
– min = 0 indica participación parcial.
– min = 1 indica participación total.
– max = 1 representa que la entidad participa en a lo sumo
una interRelación.
– max = * denota una cardinalidad N.
29
Restricciones estructurales
• Ejemplo:
– Un instructor puede asesorar 0 o más estudiantes.
– Un estudiante debe tener un asesor, no puede tener varios
asesores.
– En este ejemplo, se utiliza la notación look-here.
30
Entidades débiles
• Conjuntos entidad que no tienen atributos claves
propios.
• En un diagrama E-R, un conjunto entidad débil se
representa por un rectángulo doble.
• La identidad de un conjunto entidad débil depende
de su asociación (por medio de una interRelación)
con un conjunto entidad regular.
– Este conjunto entidad regular se denomina conjunto
entidad propietaria.
– Gráficamente, la interRelación de identificación se denota
por medio de un rombo o “diamante” doble.
31
Entidades débiles
• La participación de un conjunto entidad débil en una
interRelación de identificación siempre es total.
• Un conjunto entidad débil normalmente tiene una
clave parcial.
– Atributo(s) que puede(n) identificar de manera única a las
entidades débiles que están relacionadas con la misma
entidad propietaria.
– Gráficamente, estos atributos se subrayan con una línea
discontinua o punteada.
32
Entidades débiles
• Ejemplo:
– En este caso, la clave primaria de una sección sería
(course_id, sec_id, semester, year).
33
Bibliografía
• Capítulo 6, Secciones 6.1 a 6.5 del libro Silberschatz,
A., Korth, H. F. and Sudarshan, S. (2020). Database
System Concepts (Seventh Edition). McGraw-Hill
Education.
34
Lecturas complementarias
• Capítulo 3 del libro Elmasri, R. and Navathe, S. B.
(2016). Fundamentals of Database Systems (Seventh
Edition). Pearson Higher Education.
• Capítulo 2 del libro Ramakrishnan, R. and Gehrke, J.
(2003). Database Management Systems (Third
Edition). The McGraw-Hill Companies.
35