0% encontró este documento útil (0 votos)
31 vistas28 páginas

Modelo Relacional

Este documento explica el modelo relacional en bases de datos. Presenta el concepto de modelo relacional y sus objetivos de independencia física, lógica, flexibilidad y uniformidad. También describe las reglas de transformación desde el modelo entidad-relación, incluyendo la conversión de entidades a tablas y atributos a campos.

Cargado por

Davy Mejia
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
31 vistas28 páginas

Modelo Relacional

Este documento explica el modelo relacional en bases de datos. Presenta el concepto de modelo relacional y sus objetivos de independencia física, lógica, flexibilidad y uniformidad. También describe las reglas de transformación desde el modelo entidad-relación, incluyendo la conversión de entidades a tablas y atributos a campos.

Cargado por

Davy Mejia
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Modelo Relacional

Objetivo General

Presentar al estudiante el concepto de modelo relacional.


Objetivos Específicos

✓ Dar a conocer al estudiante las reglas de transformación para la


transformación del modelo relacional hacia el modelo entidad
relación (E-R).
✓ Explicar a qué se refiere el concepto de normalización en bases de
datos relacionales.
Modelo Relacional

¿Qué es el modelo relacional?


Según la web kyoceradocumentsolutions.es un modelo relacional ”define la implementación
lógica de la información del negocio mediante una serie de tablas, campos, restricciones,
relaciones entre las mismas, etc… que deben reflejar la semántica del negocio”.

En esencia es la traducción de nuestro modelo entidad relación (E-R) hacia una estructura que es
admisible por un sistema gestor de base de datos relacional. Recordemos que un modelo entidad
relación se trata de un diagrama que permite representar a las entidades relevantes que
formarán parte de nuestra base de datos, el cual incluye los atributos, relaciones y su
cardinalidad.

4
Modelo Relacional

¿Qué es el modelo relacional?


Para ello se deberá seguir una serie de pasos los cuales marcarán el éxito de nuestro modelo.
Como una recomendación, se sugiere llevar a cabo el modelo relacional por aparte para luego
poder desarrollarla en la computadora, esto servirá para hacer una verificación previa y
garantizará que ninguna regla de transformación haya sido pasada por alto.

El marco de trabajo del modelo relacional son las tablas por lo que cada entidad será
transformada en una tabla y en algunos casos también las relaciones se transformarán, los
atributos por su parte se transformarán en campos y las claves se transformarán en llaves. La
imagen 1 ejemplifica el modelo relacional.

5
Modelo Relacional

¿Qué es el modelo relacional?


Ejemplo el modelo relacional:

6
Modelo Relacional

Objetivos
De acuerdo a la web bookdown.org, el modelo relacional busca alcanzar los siguientes objetivos:
1. Independencia Física: La forma de almacenar los datos no debe influir en su manipulación. Si
el almacenamiento físico cambia, los usuarios que acceden a esos datos no tienen que
modificar sus aplicaciones. Esto se puede ver en los procesos de migración (importación y
exportación) de datos, se busca ser totalmente transparentes es decir, que el usuario no
tenga ni que enterarse del cambio.
2. Independencia Lógica: Las aplicaciones de software que utilizan la base de datos no deben
ser modificadas para que inserten, actualicen y eliminen datos. Esto se encuentra regulado en
el uso de un lenguaje común el SQL el cual es un estándar en la industria de sistemas gestores
de bases de datos relacional.

7
Modelo Relacional

Objetivos
De acuerdo a la web bookdown.org, el modelo relacional busca alcanzar los siguientes objetivos:
3. Flexibilidad: En el sentido de poder presentar a cada usuario los datos de la forma en que
éste prefiera. Por medio de SQL se tiene la flexibilidad de poder mostrar uno o varios
registros, realizar “joins” para realizar el retorno de registros de varias tablas. Al final el
usuario tiene el control de poder manipular la data de esta manera.
4. Uniformidad: Las estructuras lógicas de los datos siempre tienen una única forma conceptual,
lo que facilita la creación y manipulación de la base de datos por parte de los usuarios. El
modelo basado en tablas lo que facilita en la lectura y comprensión por parte de los
diferentes usuarios. No es necesario ser un experto en base de datos para comprender la
estructura de almacenamiento que un modelo persigue alcanzar.
5. Sencillez: Las características anteriores hacen que este modelo sea fácil de comprender y de
utilizar por parte del usuario final. 8
Modelo Relacional

Reglas de transformación del modelo E-R hacia el modelo relacional


Para llevar a cabo el proceso debemos de considerar los siguientes pasos:
Entidad:
Cada entidad se transformará en una tabla, lo primero que realizaremos es convertir a cada
entidad en una tabla.

Atributos:
Cada una de las características identificadas se convertirán en una columna o campo de la tabla,
cada dato almacenado en una tabla se le llamará un registro o tupla. Acá un aspecto a considerar
es que de los diferentes atributos deberemos elegir uno que nos permita identificar plenamente
a toda la tupla; este atributo se le llamará llave primaria o clave primaria.

9
Modelo Relacional

Reglas de transformación del modelo E-R hacia el modelo relacional


Para llevar a cabo el proceso debemos de considerar los siguientes pasos:
Atributos:
En caso ninguno de los atributos identificara plenamente a un registro, es totalmente válido
añadir un nuevo atributo, por lo general para registrar una serie de “códigos”. Existen además
dos términos que pueden ser encontrados en algunas literaturas, los cuales se refieren a la
cantidad de atributos definidos en una tabla y la cantidad de registros que poseen en un
momento determinado. El grado en términos de una tabla en bases de datos relacionales tiene
que ver con la cantidad de atributos definidos en una tabla. La cardinalidad en términos de una
tabla tiene que ver con la cantidad de registros que están siendo gestionados en un momento
determinado.

10
Modelo Relacional

Reglas de transformación del modelo E-R hacia el modelo relacional


Para llevar a cabo el proceso debemos de considerar los siguientes pasos:
Relaciones :
Las relaciones como tal no tienen un equivalente en el modelo relacional por lo que se deberá
seguir las siguientes reglas de transformación:
• Relaciones muchos a muchos (n:m): se creará una nueva tabla y se añadirán como atributos de
la relación, los atributos primarios de las tablas que se encuentran involucradas en la relación.
• Relaciones uno a muchos (1:n): el atributo donde reside el valor “n” de la relación, recibirá el
atributo primario; por ello es esencial identificar correctamente la cardinalidad de la misma.
• Relación uno a uno: para este caso se seguirá la misma convención de lo indicado cuando se
tratan de relaciones de tipo uno a muchos (1:n). Para seleccionar la tabla que recibirá el
atributo deberemos simular el qué pasaría si se elige entre uno u el otro.
11
Modelo Relacional

Reglas de transformación del modelo E-R hacia el modelo relacional


Terminología E-R hacia terminología relacional:

12
Modelo Relacional

Claves o llaves
En cuanto a los registros, una de las características del modelo relacional es que no deben de
existir repetidos, esto se garantiza por medio de la creación de claves o llaves, una clave
permitirá identificar plenamente la información contenida en un registro. Recordemos que un
registro representará a todos los valores de una fila en un momento determinado. En el modelo
relacional existen varios conceptos relacionados con las claves, en el portal web
ikastaroak.birt.eus podemos encontrar las definiciones para cada una de ellas:
• Clave candidata
• Clave primaria
• Clave foránea o clave extranjera

13
Modelo Relacional

Claves candidata
Una clave candidata es un campo que permitirá identificar de manera única a una fila, pueden
estar formadas por más de un atributo, siempre y cuando éstos identifiquen de forma única a la
fila. Cuando una clave candidata está formada por más de un atributo, se dice que es una clave
compuesta.

Por ejemplo, tenemos una tabla que busca registrar la información relativa a una persona, posee
los campos nombre, número de nit y fecha de nacimiento. Analicemos la situación el campo
nombre podría identificar plenamente a un registro y no podría repetirse en el tiempo, si esto
fuera así el campo podría ser identificado como una llave candidata.

14
Modelo Relacional

Claves candidata
Observemos ahora el campo número de nit, para Guatemala el número de nit es de carácter
personal, por lo que una persona u organización no puede tener un mismo nit, finalmente
analicemos el campo fecha de nacimiento, ¿será posible que dos personas pueden tener el mismo
valor?, vemos que si por lo que descartaríamos este campo para ser una llave candidata por que
por sí misma no permitiría singularizar a un registro en una tabla.

En conclusión, los campos nombre y nit son claves candidatas. Una clave candidata debe cumplir
los siguientes requisitos:
• Unicidad: No puede haber dos tuplas (filas) con los mismos valores para esos campos.
• Irreducibilidad: Si se elimina alguno de los atributos deja de ser única (esto aplica cuando
tenemos una clave compuesta).
15
Modelo Relacional

Claves primaria
La clave primaria de una tabla es aquella clave candidata que se escoge para identificar sus
registros de manera única. En virtud de que una tabla no posee registros duplicados, siempre hay
una clave candidata y, por lo tanto, la tabla siempre debe poseer una clave primaria.

En el peor caso, la clave primaria estará formada por todos los campos de una tabla, pero
normalmente habrá un pequeño subconjunto de los campos que cumplirán con este objetivo. En
otros casos, podemos crear un campo único que identifique nuestros registros, por ejemplo, un
código de usuario, un código de producto podría estar constituidos por valores de tipo secuencial.
Las claves candidatas que no son escogidas como clave primaria son denominadas claves
alternativas.

16
Modelo Relacional

Clave foránea o clave extranjera


Es un campo o conjunto de campos de una tabla cuyos valores coinciden con los valores de la
clave primaria de alguna tabla que se encuentra relacionada, pudiendo indicar que una tabla
pudiera encontrarse relacionada hacia sí misma.

Las claves foráneas o extranjeras representan relaciones entre los datos. Dicho de otra manera,
son los datos de atributos de una tabla cuyos valores están relacionados con atributos de otra
tabla. Las claves foráneas o extranjeras tienen por objetivo establecer una conexión con la clave
primaria que referencian.

17
Modelo Relacional

Clave foránea o clave extranjera


Por lo tanto, los valores de una clave ajena deben estar presentes en la clave primaria
correspondiente, o bien deben ser valores nulos. En caso contrario, la clave foránea representaría
una referencia o conexión incorrecta.

A manera de ejemplo supongamos que tenemos dos tablas la tabla “A” posee los atributos
campo_1_1, campo_1_2 y campo_1_3 cuyo campo primario es campo _1_1 y por aparte tenemos
la tabla “B” que posee los atributos campo_2_1, campo_2_2, campo_2_3, cuyo campo primario es
campo_2_1. Además, se sabe que las tablas “A y B” se encuentran bajo una relación de uno a
varios la tabla “B” por medio de las reglas de transformación recibirá un atributo adicional
“campo _1_1”. Esta concordancia es lo que denota las reglas de integridad referencial.

18
Modelo Relacional

Reglas de integridad referencial


Las reglas de integridad referencial son la clave para mantener la integridad de las relaciones
definidas dentro de nuestro modelo de base de datos.

En nuestros modelos relacionales al identificar una relación entre dos o más tablas no deberían
de existir registros huérfanos por así decirlo. Por ejemplo, en una factura, tenemos la parte de
encabezado que indica la fecha y hora de compra, datos de identificación del comprador y por
aparte tenemos el detalle que engloba el conjunto de productos o servicios que fueron
adquiridos. No debería de existir por ejemplo un código de producto o servicio que no estuviera
considerado en nuestro modelo de base de datos.

19
Modelo Relacional

Reglas de integridad referencial


La integridad referencial ayuda a mantener los vínculos entre las diferentes tablas, impidiendo
hacer registros con valores que no figuren en las tablas donde se encuentren referenciados.

En el portal bookdown.org podemos encontrar un resumen de las reglas de integridad


referencial y su aplicación dependiendo del tipo de relación que pudo establecerse:
• 1a1
• 1 a muchos
• Muchos a muchos

20
Modelo Relacional

Reglas de integridad referencial

21
Modelo Relacional

Normalización
De acuerdo al portal web learn.microsoft.com, normalización se refiere “al proceso de organizar
los datos de una base de datos. Se incluye la creación de tablas y el establecimiento de relaciones
entre ellas según reglas diseñadas tanto para proteger los datos como para hacer que la base de
datos sea más flexible al eliminar la redundancia y las dependencias incoherentes”.

Con la normalización se busca optimizar los modelos relacionales, por lo general se estos
procesos se realizan cuando ya existen ciertos registros en unas tablas lo que permite identificar
una serie de oportunidades de mejora sobre nuestros modelos de base de datos. Existen
diferentes reglas cada una se identifica como “forma normal #”, para los efectos solo se
considerarán las formas normales 1 y 2 que son las más utilizadas y las de mayor facilidad de
comprensión.
22
Modelo Relacional

Normalización
Forma normal #1
“Una tabla está en 1FN si sus atributos contienen valores atómicos, la tabla contiene una clave
primaria única y la clave primaria no contiene atributos nulos”.

Acá es donde podemos comprobar si la selección de clave primaria es la correcta y además nos
recuerda que todas las tablas que se encuentra definidas dentro de nuestro modelo de base de
datos deberá poseer una clave primaria. Por aparte un valor atómico es aquel que se encuentra
totalmente reducido, es decir que no se puede reducir.

23
Modelo Relacional

Normalización
Forma normal #1

Como se puede observar en la tabla ejemplo, existe un campo cuyo valor no se encuentra
reducido, este es el campo “email”. Se presentan dos alternativas para corregir este
inconveniente, la primera duplicar los registros con aquellos valores repetidos. La imagen
siguiente ejemplifica esta solución.

24
Modelo Relacional

Normalización
Forma normal #1

La segunda alternativa es separar el atributo que viola la forma normal número 1 y colocarla en
una nueva tabla junto a la llave primaria de esa tabla, con ello establecer la correspondiente
relación de uno a muchos; esta es quizás una forma correcta para resolver el inconveniente que
se presenta al tener valores que no son del tipo atómico.
25
Modelo Relacional

Normalización
Forma normal #1
Alternativa de solución número #2
Tabla 1

Tabla 2

26
Modelo Relacional

Normalización
Forma normal #2
“Una tabla está en 2FN si está en 1FN y además: los atributos no clave dependen exclusivamente
de la clave principal.”

Para comprender este escenario veamos un ejemplo, si tenemos una tabla con registros de
personas, la cual posee los campos CUI, nombre completo, fecha de nacimiento, empresa y
dirección de la empresa. El campo CUI ha sido seleccionado como llave primaria. Como podemos
ver CUI es representativo para una persona es decir para atributos nombre completo y fecha de
nacimiento; sin embargo, no es representativo para empresa y dirección de la empresa.

27
Modelo Relacional

Normalización
Forma normal #2
Por ejemplo, si quisiéramos registrar el conjunto de empresas a las cuales ha pertenecido un
empleado nos encontraríamos con un problema, por lo tanto, no estamos cumpliendo con la
segunda forma normal o 2FN.

La solución para este escenario es separar en una nueva tabla los registros que no son
representativos a la clave principal y colocar la relación correspondiente, similar ejemplo anterior,
alternativa de solución número #2.

28

También podría gustarte