Logo Studenta
¡Este material tiene más páginas!

Vista previa del material en texto

modelo relacional
Documento de lectura
1
Modelo Relacional
En la semana anterior abordamos las generalidades de las bases de datos, la organización de la información 
mediante el diseño de diagramas Entidad relación ER y Entidad relación mejorados EER como parte del 
diseño conceptual de bases de datos, también se definieron las relaciones entre entidades con sus 
respectivas cardinalidades, característica que nos permitirá La traducción del modelo Entidad-Relación 
a un Modelo Relacional, lo cual consiste en convertir el esquema conceptual en un esquema lógico 
relacional aplicando una serie de reglas de transformación.
El modelo ER se considera un modelo conceptual ya que permite a un nivel alto el ver con claridad la 
información utilizada en algún problema o negocio.
En este documento de lectura nos concentraremos en desarrollar un buen modelo “lógico” que se 
conoce como “esquema de la base de datos” (database schema) a partir del cual se podrá realizar 
el modelado físico en el DBMS (Data Base Management System) Sistema Manejador de Bases de datos, 
es importante mencionar que es un paso necesario, no se puede partir de un modelo conceptual para 
realizar un físico.
Puede resultar confuso el concepto de modelo entidad-relación vs modelo relacional, quizás porque 
ambos comparten casi las mismas palabras. El objetivo del modelo relacional es crear un “esquema” 
(schema), lo cual como se mencionará posteriormente consiste de un conjunto de “tablas” que 
representan “relaciones”, relaciones entre los datos. (Hidalgo, 2017)
2
Una de las características más útiles y atractivas del modelo E-R es que proporciona un método gráfico 
para mostrar la estructura conceptual de la base de datos, sin embargo, debemos aplicar más etapas de 
diseño de bases de datos hasta crear la estructura relacional y tablas.
Conversión del modelo E-R a un esquema de base de datos (Conver-
sión a tablas)
Definiciones de elementos:
• Entidades: Una entidad es Una Cosa u objeto del mundo Real.
• Atributos: Forman a la entidad, refieren a las características que detallan a la entidad
• Relaciones: es la asociación entre varias entidades, especifica el rol con respecto a la otra entidad
• Tupla: cada una de las filas de una relación. Contiene la información relativa a una única entidad.
• Grado: número de atributos de cada tupla.
• Nulo: (NULL) valor asignado a un atributo que indica que no contiene ninguno de los valores del 
dominio de dicho atributo.
• Dominio: Rango o conjunto de posibles valores de un atributo.
• Clave: es un conjunto de atributos que identifica de forma unívoca a una tupla. Puede estar 
compuesto por un único atributo o una combinación de varios.
• Clave foránea: en una base de datos relacional es una clave que se usa en una tabla secundaria 
y que coincide con la clave primaria en una tabla primaria relacionada. Las claves foráneas pueden 
tener valores duplicados (multiplicidad) en la tabla secundaria, mientras que para las claves primarias 
eso no es posible. El uso apropiado de claves foráneas permite exigir la integridad referencial.
3
La regla de la integridad referencial establece que cualquier valor de clave foránea no nulo en una tabla 
secundaria debe hacer referencia a un valor de clave primaria de su tabla primaria en la base de datos.
 
• Restricciones: 
 » Correspondencia de cardinalidad: Uno a uno, Uno a muchos, muchos a muchos
 » Claves: Es el que permite identificar de manera única cada valor de entidad. En la entidad 
Misma. 
 » En el grado de participación entre las entidades también es una restricción Si es total significa 
que se da cuando el grado de al menos una participación ocurre una entidad a otra y es 
parcial si solo algunas de las relaciones se establecen en otra entidad. (Microsoft, 2017)
Ejemplo
• Un estudiante al menos se matricula en Una asignatura (TOTAL)
• Un estudiante tiene o no tiene beca (PARCIAL)
Reglas de propagación
La traducción del Modelo Entidad-Relación en un Modelo Relacional consiste en convertir el Esquema 
Conceptual en un Esquema Lógico Relacional aplicando una serie de reglas de transformación.
Para transformar un modelo entidad-relación a modelo relacional seguiremos las siguientes reglas:
• Toda entidad del modelo entidad-relación se transforma en una tabla. 
• Cualquier atributo de una entidad se transforma en un campo dentro la tabla, manteniendo las 
claves primarias. 
 
4
Las relaciones N:M (Muchos a Muchos) se transforman en una nueva tabla que tendrá como clave 
primaria la concatenación de los atributos clave de las entidades relacionadas. 
Tablas Resultantes:
 
• En las relaciones 1:N (Uno a Muchos) se pueden tener dos casos: 
 » Si la entidad que participa con cardinalidad máxima uno lo hace también con cardinalidad 
mínima uno, entonces se propaga el atributo de la entidad que tiene cardinalidad máxima 
1 a la que tiene cardinalidad máxima N, desapareciendo el nombre de la relación. Si existen 
atributos en la relación éstos también se propagarán.
 
5
• En el caso de las relaciones 1:1 también pueden darse dos casos: 
 » Si las entidades poseen cardinalidades (0,1), la relación se convierte en una tabla. 
 » Si una de las entidades posee cardinalidad (0,1) y la otra (1,1), conviene propagar la clave de 
la entidad con cardinalidad (1,1) a la tabla resultante de la entidad con cardinalidad (0,1). 
Si ambas entidades poseen cardinalidades (1,1) se puede propagar la clave de cualquiera de 
ellas a la tabla resultante de la otra. 
• En el caso de las relaciones N-arias se aplica la misma regla que para las relaciones N:M 
• En el caso de las relaciones reflexivas supondremos que se trata de una relación binaria con 
la particularidad que las dos entidades son iguales y aplicaremos las reglas vistas en los puntos 
anteriores. 
6
Relaciones N:M
Supongamos el siguiente modelo entidad-relación.
En este caso la relación “compra” se transforma 
en una nueva tabla cuya clave primaria estará 
formada por los atributos dni, que es la clave 
primaria de CLIENTE, y código, que es la clave 
primaria de PRODUCTO. Además, tendrá como 
campo fecha compra, ya que este atributo forma 
parte de la relación.
El modelo relacional quedaría de la siguiente forma (en negrita las claves primarias):
• CLIENTE(dni,nombre,apellidos) 
• PRODUCTO(código,descripción) 
• COMPRAS(dni_cliente,código_producto,fecha_compra) 
Relaciones 1:N
Veamos ahora el caso de una relación 1:N. En el 
siguiente modelo entidad-relación un empleado 
pertenece a un único departamento (debe pertenecer 
a uno obligatoriamente), y un departamento tiene 1 o 
más empleados.
En este caso se propaga el atributo código de DEPARTAMENTO a la tabla EMPLEADO. El modelo 
relacional quedaría de la siguiente manera:
• EMPLEADO(dni,nombre,salario,codigo_departamento) 
• DEPARTAMENTO(codigo,nombre,localizacion) 
Importante:
Agregar a las claves foráneas de las entidades el prefijo el nombre de la tabla proveniente, 
para evitar confusiones cuando se relacionen los datos con otras.
Ejemplo: codigo_departamento
7
Relaciones 1:1
Veamos ahora el caso de una relación 1:1 a través del 
siguiente ejemplo. En el siguiente modelo entidad-
relación un equipo de fútbol tiene a un único 
presidente y un presidente preside a un único club de 
fútbol.
En este ejemplo, tal y como dicen las reglas, podemos 
propagar la clave de cualquier tabla a la tabla resultante 
de la otra. Es decir, tenemos dos opciones, o mover la 
clave de PRESIDENTE a EQUIPO o mover la clave de EQUIPO a PRESIDENTE. El modelo relacional podría 
quedar de cualquiera de las dos formas siguientes:
• EQUIPO(código,nombre,año_fundación) 
• PRESIDENTE(dni,nombre,código_equipo) 
• EQUIPO(código,nombre,año_fundación,dni_presidente) 
• PRESIDENTE(dni,nombre) 
 
Relaciones reflexivas
Veamos ahora como quedaría en el modelo 
relacional la siguiente relación reflexiva. En el 
siguiente modelo entidad-relación un ALUMNO es 
delegado de varios ALUMNOS y un ALUMNO tiene 
obligatoriamente un delegado ysólo a uno.
Como podemos observar en las reglas de 
transformación, en este caso la relación reflexiva 
se trata como si fuera una relación binaria con la 
particularidad de que las dos entidades son iguales. 
Al tratarse de una relación 1:N se propagará la clave 
de la entidad ALUMNO a la entidad ALUMNO, quedando el modelo relacional de la siguiente forma:
• ALUMNO(num_expediente,nombre,num_expediente_delegado) 
8
EJEMPLOS
a. Identificando la entidad con sus atributos, relaciones, y restricciones: 
• Un cliente es prestatario de un préstamo.
• Muchos préstamos pueden ser prestados por un cliente
b. Representación de una relación con entidad débil. Uno a muchos
• Un pago se abona a un préstamo
• Muchos pagos se abonan a un préstamo
 
La entidad débil se asocia al préstamo
c. Descripción de un mundo real #1
A partir del siguiente enunciado se desea realizar el modelo entidad-relación.
“Se desea informatizar la gestión de una empresa de transportes que reparte paquetes por toda España. 
Los encargados de llevar los paquetes son los camioneros, de los que se quiere guardar el dni, nombre, 
teléfono, dirección, salario y población en la que vive.
9
De los paquetes transportados interesa conocer el código de paquete, descripción, destinatario y dirección 
del destinatario. Un camionero distribuye muchos paquetes, y un paquete sólo puede ser distribuido por 
un camionero.
De las provincias a las que llegan los paquetes interesa guardar el código de provincia y el nombre. Un 
paquete sólo puede llegar a una provincia. Sin embargo, a una provincia pueden llegar varios paquetes.
De los camiones que llevan los camioneros, interesa conocer la matrícula, modelo, tipo y potencia. Un 
camionero puede conducir diferentes camiones en fechas diferentes, y un camión puede ser conducido 
por varios camioneros”.
 
Resultado del esquema:
 
Su modelo relacional sería:
CAMIONERO(dni, nombre, dirección,tfno,salario,poblacion)
CAMION(matricula,potencia,modelo,tipo)
PAQUETE(codigo,descripción,destinatario,dirección,codigoprov)
PROVINCIA(codigoprov,nombre)
10
Sus tablas serían:
 
11
Bibliografía
Hidalgo, L. (2017). Modelo entidad relación: descripción y aplicaciones. Obtenido de https://www.icemd.
com/digital-knowledge/articulos/modelo-entidad-relacion-descripcion-aplicaciones/
Microsoft. (2017). Documentación de SQL. Restricciones entre claves principales y claves externas. 
Obtenido de https://docs.microsoft.com/es-es/sql/relational-databases/tables/primary-and-foreign-key-
constraints?view=sql-server-ver15