Presentación sobre los Modelos ER y Relacional preparado como parte de la materia de Diseño y Administración de Base de Datos de la carrera de Informática de la UMSA.
1. MODELOS ENTIDAD
RELACIÓN Y RELACIONAL
PARTE 1
M.SC. ALDO VALDEZ ALVARADO
Preparado como parte de los contenidos de la Asignatura
Diseño y Administración de Base de Datos
UNIVERSIDAD MAYOR DE SAN ANDRÉS
CARRERA DE INFORMÁTICA
2. Diseño Conceptual
Diagrama Entidad Relación (ER)
Breve Historia del Modelo Relacional
Conceptos del Modelo Relacional
Restricciones del Modelo Relacional
Índice
1
2
3
4
5
4. El diagrama Entidad Relación (ER) es un método
que nos permite modelar una base de datos. Este
es un diagrama gráfico; las personas que no están
en el campo de la informática pueden o no
comprender estos diagramas. El diagrama ER es
una herramienta gráfica que facilita el modelado de
datos. Los diagramas ER son un subconjunto de los
"modelos semánticos". (Bagui, 2012)
5. Los modelos semánticos se refieren a modelos que
pretenden obtener significado de los datos. Los
diagramas ER no son las únicas herramientas de
modelado semántico, pero son comunes y
populares. (Bagui, 2012)
6. El mapeo es el proceso de elegir un modelo lógico
y luego pasarlo a un sistema de base de datos
físico desde un modelo conceptual (el diagrama
ER). Un archivo físico cargado con datos es
necesario para obtener datos de una base de
datos. El mapeo es el puente entre el concepto de
diseño y la realidad física. (Bagui, 2012)
8. El diagrama ER es una herramienta de modelado
de datos semánticos, que se utiliza para lograr el
objetivo de describir o representar datos de
manera abstracta. Los datos descritos de forma
abstracta se denominan modelos conceptuales.
Nuestro modelo conceptual nos llevará a un
esquema. Un esquema implica una descripción
permanente y fija de la estructura de los datos.
(Bagui, 2012)
9. Una entidad es una cosa sobre la cual
almacenamos datos. Para Chen, una entidad es
algo que puede identificarse claramente.
Entonces, una entidad puede ser una persona,
lugar, objeto, evento o concepto sobre el cual
deseamos almacenar datos. (Bagui, 2012)
10. Un atributo es la categoría de datos que
describe una entidad o relación. Una relación es
una conexión entre entidades.(Bagui, 2012)
11. Características del diagrama ER
• El nombre de una entidad debe ser genérico. El nombre
debería ser capaz de adaptarse a los cambios "a lo
largo del tiempo". (Bagui, 2012)
• Por analogía, un archivo es un conjunto de entidades,
mientras que un registroes una entidad. (Bagui, 2012)
12. • Una entidad puede ser muy amplia, o puede ser
reducida por la aplicación para la que se preparan los
datos. Las entidades "amplias", que cubren toda una
clase de objetos, a veces se llaman generalizaciones
(por ejemplo, persona) y las entidades "más estrechas"
a veces se denominan especializaciones (por ejemplo,
estudiantes). (Bagui, 2012)
Características del diagrama ER
13. • Cuando hablamos de capturar datos sobre una entidad
en particular, nos referimos a esto como una instancia.
(Bagui, 2012)
• Cada instancia de una entidad debe ser identificable de
manera única, de modo que cada instancia sea
separable y claramente diferenciable de todas las
demás instancias de ese tipo de entidad. (Bagui, 2012)
Características del diagrama ER
14. • En un conjunto de entidades de clientes por ejemplo,
puede imaginarse que la compañía le asignaría un
número de cliente único. Este identificador único se
llama clave. (Bagui, 2012)
Características del diagrama ER
15. • Un atributo es una propiedad o característica de una
entidad. (Bagui, 2012)
• Las relaciones se denotan generalmente con frases
verbales. (Bagui, 2012)
Características del diagrama ER
18. El modelo relacional lo propuso por primera vez
Codd en 1970, en un ensayo titulado “A Relational
Model of Data for Large Shared Data Banks”. Gran
parte de las primeras investigaciones acerca del
modelo la realizaron Codd y sus asociados en el
laboratorio de investigación de IBM, anteriormente
en San José, California.(Ricardo, 2006)
19. El modelo relacional se basa en la noción
matemática de relación. Codd y otros extendieron
la noción para aplicarla al diseño de bases de
datos. Por ende, fueron capaces de sacar ventaja
del poder de la abstracción matemática y de la
expresividad de la notación matemática para
desarrollar una estructura simple, pero poderosa,
para las bases de datos. (Ricardo, 2006)
22. Relación
• El modelo relacional se basa en el concepto de
relación, que se representa físicamente como una
tabla o arreglo bidimensional.
• En este modelo, las tablas se usan para contener
información acerca de los objetos a representar
en la base de datos.
• Al usar los términos del modelo entidad-relación,
los conjuntos de entidades y de relaciones se
muestran usando tablas. (Ricardo, 2009)
23. Relación
• Una relación se representa como una tabla
bidimensional en la que las filas de la tabla
corresponden a tuplas individuales y las
columnas corresponden a atributos.(Ricardo,
2009)
• Una relación esta compuesta de una cabecera y
un cuerpo. (Sharma et. al, 2010)
24. Relación
• La cabecera consiste de un conjunto fijo de
atributos.
• El cuerpo consiste en un conjunto de tuplas que
varían en el tiempo, donde cada tupla a su vez
consiste en un conjunto de pares de atributos y
valores. (Sharma et. al, 2010)
25. Relación
Características de una relación
• Un grado de la relación es equivalente al número
de atributos de esa relación. Una relación de
grado uno se llama unaria, una relación de grado
dos binaria, una relación de grado tres ternaria, y
así sucesivamente. Una relación de grado n se
llama naria.(Sharma et. al, 2010)
26. Relación
Características de una relación
• La cardinalidad de la relación es equivalente con
el número de tuplas de esa relación. La
cardinalidad de una relación cambia con el
tiempo, mientras que el grado no cambia con
tanta frecuencia.(Sharma et. al, 2010)
27. Relación
Características de una relación
• El estado en el que existe una relación en un
momento en el tiempo se denomina instancia de
la relación. Por lo tanto, durante la vida de una
relación puede haber muchas instancias de
relación. (Sharma et. al, 2010)
28. Relación
Propiedades
• No hay tuplas duplicadas en una relación
• Las tuplas están desordenadas (de arriba a
abajo)
• Los atributos están desordenados (de izquierda a
derecha)
• Todos los valores de los atributos son atómicos.
(Sharma et. al, 2010)
29. Atributos
• Un dato característico del mundo real, modelado
en la base de datos, estará representada por un
atributo.
• Un atributo debe tener un nombre, por lo que
puede referirse a una característica, y el nombre
debe ser lo más relevante posible para esa
característica. (Sharma et. al, 2010)
30. Atributos
• Los términos informales utilizados para definir un
atributo son: columna en una tabla o campo en
un archivo de datos. (Sharma et. al, 2010)
31. Dominio
• Un dominio es un conjunto de valores atómicos
que son todos del mismo tipo.
• Un valor es la unidad de datos más pequeña en el
modelo relacional.
• Un atributo siempre tiene un dominio asociado a
él.
• Este dominio proporciona los valores posibles
para ese atributo. (Sharma et. al, 2010)
32. Dominio
• Dos o más atributos se pueden definir en el
mismo dominio.
• Un dominio tiene un nombre, por lo que podemos
hacer referencias a él, y una dimensión.
• La dimensión viene dada por la cantidad de
valores que tiene el dominio.
• Los dominios son principalmente de naturaleza
conceptual. (Sharma et. al, 2010)
33. Dominio
• En la mayoría de los casos, no están almacenados
explícitamente en la base de datos.
• Los dominios deben especificarse como parte de
la definición de la base de datos y, luego, cada
definición de atributo debe incluir una referencia
al dominio correspondiente, de modo que el
sistema conozca los atributos que son
comparables entre sí. (Sharma et. al, 2010)
34. Tupla
• Una tupla es un conjunto ordenado de valores
que describen las características de los datos en
un momento determinado.
• Otro término formal utilizado para definir una tupla
es n-tupla.
• Los términos informales utilizados para las tuplas
son: fila en una tabla o registro en un archivo de
datos. (Sharma et. al, 2010)
35. Esquema
• Un esquema de base de datos es una descripción
formal de todas las relaciones (tablas) en las
bases de datos y todas las relaciones existentes
entre ellas. (Sharma et. al, 2010)
36. Claves
• El modelo relacional usa claves para definir a los
identificadores de las tuplas de una relación. Las
claves se usan para imponer reglas y/o
restricciones en los datos de la base de datos.
• Esas restricciones son esenciales para
mantener la consistencia y corrección de los
datos. (Sharma et. al, 2010)
37. Claves
• El SGBD relacional permite la definición de
dichas claves y, a partir de este punto, el SGBDR
es responsable de verificar y mantener la
corrección y la coherencia de los datos de la base
de datos.(Sharma et. al, 2010)
38. Claves
Claves candidatas
• Una clave candidata es un identificador único
para las tuplas de una relación. Por definición,
cada relación tiene al menos una clave candidata
(la primera propiedad de una relación). En la
práctica, la mayoría de las relaciones tienen
múltiples claves candidatas.(Sharma et. al, 2010)
39. Claves
Claves candidatas
• Un conjunto de claves candidatas, son
candidatas, si y solamente si, satisfacen las
siguientes dos propiedades independientes del
tiempo.
• En un momento dado, no hay dos tuplas
distintas de la Relación que tengan el mismo
valor para cualquiera de sus atributos. (Sharma
et. al, 2010)
40. Claves
Claves candidatas
• No se puede descartar ninguna de las claves
candidatas, sin destruir la anterior propiedad.
• Una clave candidata, es llamada algunas veces
clave única.
• Si una relación tiene más de una clave candidata,
la que se elige para representar la relación se
denomina clave principal, y las demás claves
candidatas se denominan claves alternativas.
41. Claves
Claves primarias
• Una clave principal es un identificador único de
las tuplas en una relación. Como se mencionó
anteriormente, se trata de una clave candidata
que se elige para representar la relación en la
base de datos y para proporcionar una manera
única de identificar cada tupla de la relación. Una
relación en la base de datos siempre tiene una
clave principal. (Sharma et. al, 2010)
42. Claves
Claves primarias
• Los valores de estos atributo deben ser únicos y
no nulos para todas las tuplas de todas las
instancias de la relación.
• Hay situaciones del mundo real de los datos, en
las que la característica modelada por esa
relación, no tiene valores únicos. (Sharma et. al,
2010)
43. Claves
Claves primarias
• En esos casos, la solución adoptada es
introducir otro atributo, como un ID, sin
significado para los datos del mundo real, que
tendrá valores únicos y se utilizará como clave
principal. (Sharma et. al, 2010)
44. Claves
Claves primarias
• Este atributo generalmente se llama clave
sustituta. A veces, en la literatura sobre bases de
datos, también encontrará que se hace referencia
a ella como clave artificial. (Sharma et. al, 2010)
45. AUTOMÓVIL
Tipo Fabricante Modelo Año_fabricación Color
Combustibl
e Nro_chasis Nro_motor Placa
Minibus Suzuky Mini 2001Blanco Gas
WQW-
151515
ER-12223-
ERD 2345-JLP
Particular Toyota RAV4 2010Azul Gasolina
ERT-
1357908
TR-12345-
JKL 3967-MDR
Van SUzuky MDL 2015Verde Gas
DFC-
3435445
TG-23547-
KML 4198-NJI
Particular Nissan Sunny 2000Rojo Gasolina
GVB-
5678956
XC-46579-
OKI 1928-ASD
Particular Suzuky Celerio 2016Blanco Gasolina
EDF-
2938474
ZX-92836-
LMJ 4238-EFR
Minibus Toyota VEL 2001Rojo Gas BNM-346289
I-23767-45-
JK 1978-ALD
CABECERA
CUERPO
Tupla
Atributo
Valor
Claves candidatas
Clave principal
46. Claves
Claves foráneas o externas
• Una clave foránea es un atributo (o combinación
de atributos) en una relación R2 cuyos valores son
necesarios para coincidir con los de la clave
primaria de alguna relación R1 (R1 y R2 no
necesariamente distintos). Tenga en cuenta que
una clave foránea y la clave principal
correspondiente se deben definir en el mismo
dominio subyacente. (Sharma et. al, 2010)
47. Claves
Claves foráneas o externas
• Las coincidencias de clave-foránea-principal
representan referencias de una relación a otra.
• Son el pegamento que mantiene unida la base de
datos.
• Otra forma de decir esto es que las coincidencias
de clave-foránea-principal representan ciertas
relaciones entre tuplas. (Sharma et. al, 2010)
48. Claves
Claves foráneas o externas
• No obstante, tenga en cuenta que no todas las
relaciones de este tipo están representadas por
coincidencias de clave-foránea-principal.(Sharma
et. al, 2010)
49. DUEÑO
ID
Pri_Nombr
e Apellido_P Ciudad Calle Número Teléfono Placa
1Vladimir Lopez La Paz Arce 12 24345672345-JLP
2Miguel Caballero Santa Cruz Primer A. 123 32454653967-MDR
3Adolfo Ugarte La Paz Villazón 11 23143344198-NJI
4Lucy Alvarado La Paz Torres 56 28838381928-ASD
5Victoria Chavez Cochabamba Bartolina 23 12324354238-EFR
6Claudia Caballero Chuquisaca Indepen. 53 3445461978-ALD
Clave Primaria Clave Foránea
51. En el modelo relacional, la integridad de los datos
se puede lograr usando reglas o restricciones de
integridad. Esas reglas son generales, y se
especifican en el nivel de esquema de la base de
datos y deben ser respetadas por cada instancia
del esquema. Si queremos tener una definición de
la base de datos relacional correcta, tenemos que
declarar tales restricciones.
52. Si un usuario intenta ejecutar una operación que
violaría la restricción, entonces el sistema debe
rechazar la operación o, en situaciones más
complicadas, realizar alguna acción de
compensación en alguna otra parte de la base de
datos. (Sharma et. al, 2010)
53. Integridad de la Entidad
La restricción de integridad de la entidad dice que
ningún atributo que participe en la clave primaria de
una relación puede aceptar valores nulos.
La justificación para la restricción de integridad de la
entidad es:
• Las relaciones de la base de datos corresponden
a entidades del mundo real y, por definición, las
entidades en el mundo real son distinguibles,
tienen una identificación única de algún tipo.
54. Integridad de la Entidad
• Las claves primarias realizan la función de
identificación única en el modelo relacional.
• Por lo tanto, un valor de clave primaria nulo sería
una contradicción en los términos porque estaría
diciendo que hay alguna entidad que no tiene
identidad, que no existe. (Sharma et. al, 2010)
55. Integridad Referencial
La restricción de integridad referencial dice que si
una relación R2 incluye una clave externa FK que
coincide con la clave primaria PK de otra relación
R1, entonces cada valor de FK en R2 debe ser igual
al valor de PK en alguna tupla de R1 o ser
completamente nulo (cada valor de atributo que
participa en ese valor de FK debe ser nulo). R1 y R2
no son necesariamente distintos.(Sharma et. al,
2010)
56. Integridad Referencial
La justificación para la restricción de integridad
referencial es:
• Si alguna tupla t2 de la relación R2 hace
referencia a alguna tupla t1 de la relación R1,
entonces la tupla t1 debe existir; de lo contrario,
no tendría sentido.(Sharma et. al, 2010)
57. Integridad Referencial
• Por lo tanto, un valor de clave foránea dado debe
tener un valor de clave primaria coincidente en
algún lugar de la relación a la que se hace
referencia, si ese valor de clave foránea es
diferente de nulo.
• A veces, por razones prácticas, es necesario
permitir que la clave foránea acepte valores
nulos.(Sharma et. al, 2010)
58. Integridad Semántica
• Una restricción de integridad semántica se refiere
a la exactitud del significado de los datos.
• Una restricción de integridad semántica se puede
considerar como un predicado, que deben cumplir
todos los estados correctos de las instancias de
relaciones de la base de datos.(Sharma et. al,
2010)
59. Integridad Semántica
Restricciones de Dominio
• Una restricción de dominio implica que un atributo
particular de una relación se define en un dominio
particular. Una restricción de dominio simplemente
establece que se requiere que los valores del
atributo en cuestión, pertenezcan a los valores
establecidos que constituyen el dominio
subyacente.(Sharma et. al, 2010)
60. Integridad Semántica
Restricción Nula
• Una restricción nula especifica que los valores de
los atributos no pueden ser nulos. En cada tupla,
de cada instancia de relación, ese atributo debe
tener un valor que exista en el dominio de atributo
subyacente.(Sharma et. al, 2010)
61. Integridad Semántica
Restricción Única
• Una restricción única, especifica que los valores
de atributo deben ser diferentes. No es posible
tener dos tuplas en la relación con los mismos
valores para ese atributo.(Sharma et. al, 2010)
62. Integridad Semántica
Restricción de Verificación
• Una restricción de verificación, especifica una
condición (un predicado) en una relación de
datos, que siempre se verifica cuando se
manipulan los datos. El predicado indica qué
verificar y, opcionalmente, qué hacer si la
verificación falla (respuesta de infracción).
(Sharma et. al, 2010)
63. Integridad Semántica
Restricción de Verificación
• Si se omite esta respuesta de violación, la
operación se rechaza con un código de retorno
adecuado. Cuando se ejecuta la restricción, el
sistema verifica si el estado actual de la base de
datos satisface la restricción especificada. Si no lo
hace, la restricción se rechaza, de lo contrario se
acepta y se aplica desde ese momento.(Sharma
et. al, 2010)
64. Aldo Ramiro Valdez Alvarado
Licenciado en Informática
Master en Dirección Estrategica en
Tecnologías de la Información
Máster en Business Intelligence y Big Data
Docente Titular de Pregrado en la UMSA
Docente de Postgrado en la UMSA
Ex - Coordinador del Postgrado en
Informática UMSA
Conferencista Nacional e Internacional
http://aldovaldezalvarado.blogspot.com/
https://www.linkedin.com/in/msc-aldo-
valdez-alvarado-17464820
aldo_valdez@hotmail.com
Muchas Gracias!!!