Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Datos
UNIDAD 2
BASE DE DATOS
RELACIONALES
1
Se prohíbe la reproducción total o parcial de esta obra, por
cualquier medio, electrónico o mecánico sin la autorización de
la Dirección de Educación a Distancia (UDB virtual).
2
Sumario
Atributos .......................................................................................... 5
Representación de Atributos ............................................................ 6
Elementos básicos de Modelado. ...................................................... 5
Dominio de los atributos................................................................... 7
Atributos compuestos y atómicos ..................................................... 8
Atributos Mono Valor y Multi Valor ................................................... 9
Atributos derivados ........................................................................ 10
Diagrama entidad – relación (ER) ................................................... 13
Herramientas de modelado conceptual ........................................... 13
Modelo Relacional ........................................................................... 13
Componentes del modelo ER .......................................................... 14
Instalar software Día ...................................................................... 15
Aplicaciones ................................................................................... 15
Componentes del modelo relacional ............................................... 17
Tipos de datos ................................................................................ 18
Tabla .............................................................................................. 18
Tuplas............................................................................................... 1
Campos........................................................................................... 18
Campos candidatos ......................................................................... 19
Llave foránea .................................................................................. 19
Llave Primaria ................................................................................ 19
Relaciones entre tablas .................................................................. 19
Propiedades de las
relaciones…………………………………………………................................21
Estructura de datos relacional……………………………………………….….21
Cardinalidad de las relaciones ........................................................ 22
Tipos de relaciones ......................................................................... 22
Fundamentos y reglas de la normalización ..................................... 28
Normalización................................................................................. 28
Reglas de normalización ................................................................. 28
¿Por qué normalizar?...................................................................... 28
Primera forma normal .................................................................... 29
Segunda Forma normal................................................................... 31
Tercera Forma Normal .................................................................... 32
Otras Formas de Normalización ...................................................... 33
Normalización de una tabla (ejemplo) ............................................ 35
3
En la unidad I se presentaron los conceptos fundamentales a cerca de las bases de datos
(BD), ya que es necesario en primera instancia familiarizarnos con la terminología que
se utilizara a lo largo del curso, entender cual es la importancia de implementar una base
de datos para las empresas, cuáles son los componentes de las bases de datos y cuál
es la importancia de realizar un levantamiento de requisitos de usuarios para un sistema
de bases de datos.
Posterior a eso, ahora en esta Unidad II, se dará el siguiente paso que es de vital
importancia para poder implementar un sistema de base de datos, este paso
corresponde al diseño de una base de datos relacional, para ello trataremos los
siguientes temas: Elementos básicos del modelado, modelo relacional, Estructura de
datos relacional y Normalización.
Pues bien, ahora en esta unidad profundizaremos sobre este tema, iniciamos
haciéndonos algunas preguntas como: ¿de dónde salieron las Tablas?, estas salieron
del levantamiento del requerimiento, solo que en ese paso no eran llamadas tablas,
sino entidades, ¿de dónde entonces nacen las entidades?, pues, estas son creadas
4
al conocer el proceso al cual se está analizando para, finalmente, convertirlo en una
aplicación, tener en cuenta que cuando se conoce el proceso, es como un relato en
donde las entidades van apareciendo de una en una, y pueda que haya entidades
que no se mezclan con otras, las relaciones de una entidad con otra están regidas
por el proceso.
Entonces dado lo anterior tenemos otras preguntas que hacernos: ¿todas las
entidades son tablas?, correcto, y ¿todas las tablas son entidades?, no
necesariamente, ¿cómo así?, lo que sucede es que, al relacionarse una entidad con
otra, también se generan tablas, hoy si conocemos de donde se generan todas las
Tablas, este término (tabla) es el que nos interesa, ya que los atributos están
directamente atados a estas, pongamos un ejemplo para aclararlo:
Un Carro es una entidad, este a la vez es una Tabla, los atributos vienen a ser
aquellas características propias de las tablas, en este ejemplo serian: Color, Marca,
Modelo, Placa, Chasis, son atributos que representan de forma conceptual a un
campo que estará contenido dentro de una tabla y en el cual se almacenará un valor
que representar un dato. Dado esta analogía podremos entonces decir que un
atributo que este contenido dentro de una entidad se convertirá en un campo dentro
de una tabla.
5
Figura 16: Representación de Atributos
Fuente: Elaboración Propia
6
Estos conceptos son los mayores alcances que se llega en el diseño conceptual.
Cuando hablamos de una derivación del dominio ya lo hacemos considerando el
motor de base de datos, lo que lleva a un mayor nivel, ya que, si bien es cierto que a
nivel macro se habla del mismo concepto, a nivel de detalle en el motor son distintos
veamos un ejemplo:
Si hablamos de un Entero a nivel general, cuando lo configuramos para la base de
datos Sql Server podría ser “int” a diferencia de Oracle que sería un “number”, pero
la cosa no termina ahí, ya que, para las bases de datos, este tipo de dominio tiene
una mayor distribución, retomando Sql Server como ejemplo, un Entero puede ser
bigint, int, smallint, tinyint, decimal, numeric, etc., cada una de ellas, provee al
dominio una característica más delimitada.
7
Figura 17: Atributo Compuesto
Fuente: Elaboración Propia
8
Figura 18: Atributo Mono y Multi Valor
Fuente: Elaboración Propia
9
1.6. Atributos Claves
Estos Atributos son los más fundamentales, al realizar el análisis de la Información
de la Entidad, deben de tener la característica de que sus datos sean únicos, esto
quiere decir que sus valores no pueden repetirse, estos al pasar a un esquema de
bases de datos, se convierten o se consideran como las llaves primarias, por eso es
muy fundamental, identificarlas de forma correcta, la representatividad gráfica es que
aparecen subrayadas, como puede apreciarse en la figura 20.
En la figura 20, podemos apreciar que aparecen dos atributos como atributo clave
(ambos se encuentran subrayados), esto se debe a que ambos cumplen el requisito de
que sus valores son únicos y no se repiten por lo que cualquiera de ellos sería la llave
primaria al convertirse en tabla, entonces ¿de qué dependerá que uno de los dos
atributos se convierta en llave primaria?, pues, esto va a depender de qué tipo de sistema
o aplicación se está desarrollando, si la aplicación es para un taller, la placa es la
indicada, pero si el sistema es para una venta de vehículos nuevos, tendría que ser el
chasis, ya que la placa no se posee en todo el proceso.
10
Para consulta de más ejemplos referentes a la clasificación
de los tipos de atributos y su dominio favor consultar a
Merchán (2016, pp. 41-49), en el siguiente
enlace:http://publicaciones.uazuay.edu.ec/index.php/ceuazu
ay/catalog/download/5/5/37-2?inline=1, este material de
apoye contiene información detallada sobre el modelo ER y
además te da una variedad de ejemplos gráficos de los
temas abordados paso a paso que puedes consultar cuando
ya esté realizando el diseño conceptual de una base de
datos.
11
Clase 6 | Modelo Relacional
Cuando se presenta un problema en la vida real es necesario comprenderlo y tener la
capacidad de abstracción, para poder identificar que componentes se encuentran
involucrados, la relacion que existe entre estos y cuál es la actuación que se da en la
problemática.
En esta clase iniciaremos primero tratando el tema del diseño conceptual que se debe
dar antes de pasar al modelo relacional, ya que de este se parte para luego convertirlo
al otro y más adelante cuando se trate el tema referente a componentes del modelo
relacional se darán detalles sobre el modelo relacional.
La fase del diseño conceptual tiene como objetivo crear un esquema conceptual de alto
nivel e independiente de la tecnología a partir de los requisitos, las especificaciones y las
restricciones que se han recogido en la fase anterior. Dicho esquema es una
representación gráfica que describen conocimiento general sobre un dominio que un
sistema de información debe de saber para poder llevar a cabo sus funciones. Casa &
Conesa (2014, p. 27)
Para la creación del esquema conceptual existen diversas herramientas, entre ellas se
encuentra el diagrama entidad – relación (ER), dentro de esta herramienta existe cierta
simbología que se utiliza para representar el modelo conceptual de la base de datos.
12
una forma sencilla e intuitiva los datos la semántica de los sistemas que modela. (Hueso,
2014, p.162)
Persona
Rectángulo
Lugar
Nombre
Un atributo es una propiedad Atributo
o característica asociada a Edad
Atributo una determinada entidad y, NOTA: como se
ha visto en la
por tanto, común a todas las
clase anterior a
ocurrencias de esa entidad. esta, existen una Persona
diversidad de
atributos.
Una interrelación es Cada una de las
básicamente una asociación relaciones, tiene su
Relación o
entre una o más entidades, Relaci cardinalidad, esto se
Interrelación ón
una interrelación es una explicara en la
abstracción que representa siguiente clase.
1
La información que se encuentra en la tabla 2, fue tomada de (Hueso, 2014, pp. 163,164,165 y 168)
13
un conjunto de ocurrencias
del tipo de interrelación
representado.
Persona
Pertenece
Departamento
8.2. Aplicaciones
Para realizar el diseño del modelo ER de un sistema de negocio, existe una diversidad
de software que permiten realizar esa tarea, para ello existen software de libre uso y
software propietario (es necesario contar con licencia para su uso).
Lista de software para diseñar modelo ER
Software día (libre)
Visio (propietario, necesita pagar licencia)
Power Designer (propietario, necesita pagar licencia)
14
Native Dias Format (.dia)
Portable Network Graphics (.png)
Scalable Vector Graphics (.svg)
Otro punto importante que mencionar es sobre quiénes pueden requerir de utilizar este
software, según se menciona en Breit et al. (2000., p. 9) son:
Ingenieros electricistas, para crear diagramas que muestran como sus circuitos
trabajan.
Programadores de computadoras, para mostrar la ruta de ejecución de sus
programas.
Un administrador de red puede crear un diagrama para mostrar cómo se distribuye
la red de su empresa.
15
Para consulta de más ejemplos referentes a la clasificación de los
tipos de atributos y su dominio favor consultar a Merchán (2016, pp.
67-68), en el siguiente enlace:
http://publicaciones.uazuay.edu.ec/index.php/ceuazuay/catalog/down
load/5/5/37-2?inline=1, este material de apoye contiene información
detallada sobre el modelo ER y además te da una variedad de
ejemplos gráficos de los temas abordados paso a paso que puedes
consultar cuando ya esté realizando el diseño conceptual de una base
de datos.
Las bases de datos relacionales contienen tablas a las cuales se les asignan nombres
únicos, y esta a la vez están compuestas por una serie de columnas que representan los
campos de la tabla y filas que representan los registros individuales almacenados en la
tabla. En la tabla 3, se puede apreciar un ejemplo de cómo está compuesta una tabla.
Columnas (campos)
16
JC030245 Antonio Alessandro Jiménez Calero Santa Tecla 7589-6571
Fuente: Elaboración propia
Filas (Registros)
9.1. Tabla
Haciendo referencia al punto anterior en donde se visualiza (forma tabular) y se
menciona que una tabla se encuentra conformada por un grupo de columnas y filas,
se puede decir que de manera formal esto se llama relación y de manera informal
como ya se ha mencionado anteriormente se llama tabla.
9.2. Tuplas
En una base de datos relacional, una tupla hace referencia a una fila de la tabla, la
cual esta formada por un conjunto de campos y esto conforman un registro, por
ejemplo, en la tabla estudiantes todo el conjunto de datos de un estudiante en
particular forma el registro para ese estudiante, por lo tanto, una tabla agrupa un
conjunto de registros o tuplas.
9.3. Campos
Cuando hablamos de un campo, estamos haciendo referencia a “un dato y este es la
mínima unidad que se almacena en una tabla, indivisible en el concepto original del
modelo almacenado en la intersección de una fila y una columna” (Reinosa,
Maldonado, Muñoz y Damiano, 2012, p.28). Por ejemplo: VT013456 es un número
de carné de un estudiante que se encuentra almacenado en un campo llamado carne
y es parte de la estructura de una tabla.
17
tabla Estudiantes se almacenará un dato que contiene letra y números por lo que el
tipo de dato a definir es un string, char o varchar, esto depende de los tipos de datos
que maneja cada SGBD.
Una relación se establece haciendo coincidir los datos de la columna clave ubicado
en una de las tablas con el campo que existe en la otra tabla con el mismo nombre y
tipo de dato donde es llave foránea.
18
compuesto por dos letras (que representan las iniciales de sus apellidos), luego
siguen dos números que representan el año de ingreso y finalmente cuatro dígitos
que representan un número correlativo, como se puede apreciar la composición de
este campo identifica al estudiante como único.
Puede existir más de un campo candidato y uno de ellos, solamente uno puede ser
seleccionado por el diseñador de BD como llave primaria.
19
Clase 7 | Estructura de datos
relacional
20
Según este ejemplo, la entidad “Cliente”, en ningún momento debería relacionarse con
la entidad “Mecánico”, “Repuestos” y “Servicios”, con la única entidad que se relaciona
directamente es “Carro”, si vemos la secuencia del proceso la entidad “Carro” se
relaciona con las entidades “Mecánico”, “Repuestos” y “Servicios”, pero no lo hace de
una manera directa, sino que lo realiza mediante la figura diagnóstico, esto quiere decir
que el diagnostico se convierte al final en una tabla, en donde se unen todas esas
relaciones.
21
Figura 22: Tipos de Relaciones
Fuente: Elaboración Propia
22
Figura 24: Combinación Relaciones 2
Fuente: Elaboración Propia
Veamos cuál es el resultado, aplicado al ejemplo de la figura 25
A este punto ya está definida la relación entre las dos entidades “pertenencia”, y se
analiza desde la entidad Carro hacia la entidad Cliente, por lo que los planteamientos,
serían los siguientes:
Esta relación es una relación lógica, lo que nos faltaría es hacerla física.
¿Cómo así?, para que eso se pueda dar es porque vamos a pasar a la etapa de diseño
físico, en donde las dos entidades se convirtieron en tablas, y estando como tablas,
estas se someten a un proceso que veremos más adelante, el cual es la normalización,
pero lo que debemos de llevarnos de este tema, es que este análisis nos sirve para
conocer en donde ira el campo de la relación entre las dos tablas, el cual más adelante
conoceremos como llave foránea.
24
Para tener una directriz sobre el campo que sirve como relación entre dos tablas, la
siguiente figura nos ayudara, ver figura 27:
25
https://ebookcentral.proquest.com/lib/cbues-
ebooks/reader.action?docID=3229711&query=Base%2Bde%2Bdato
s%2B%253A%2Bgrado%2Bsuperior#, aquí encontraras el libro Base
de Datos: grado superior escrito por Hueso (2014, pp. 168 – 175).
26
Clase 8 | Normalización
De la clase 5 a la clase 7 hemos venido trabajando paso a paso el tema sobre el diseño
de una base de datos relacional, una vez se ha realizado esto es necesario convertir
cada una de las entidades que ha incluido en el diseño a tablas, para poder el siguiente
paso que s normalización, en esta explicaremos las 5 reglas de normalización que
existen y a través de ejemplos mostrados en la clase se espera mejor entendimiento de
como se aplica cada una de las reglas de normalización.
Según Piñeiro (2014, p.58), “la normalización es la técnica que nos ayuda a organizar
datos basados en un diseño correcto de las tablas y sus relaciones”.
El principal objetivo de esta es eliminar la redundancia y la inconsistencia de los datos,
La redundancia no es más que la repetición de Datos, y la inconsistencia la encontramos
al relacionar datos de una tabla con otra.
27
11.2.1. Primera forma normal
Esta consiste en alcanzar estos objetivos
Eliminar los grupos repetidos de las tablas individuales.
28
Figura 28: Tabla sin Grupo Repetitivo
Fuente: Elaboración Propia
Esta actividad es una de las más fundamentales, ya que en ella se crea o identifica
la clave primaria de las tablas, tome en consideración que lo que se debe hacer
en este paso es tratar de identificar una característica que ya posee la entidad que
está analizando, uno de los errores más comunes que suceden en este paso es
que la llave se crea como un secuencial, lo que generaría una inconsistencia en
la información, aplicando este proceso a las tablas del ejemplo, quedaría de la
siguiente manera, ver figura 29:
29
Figura 29: Clave Primaria (CP)
Fuente: Elaboración Propia
Al establecer una sola incidencia del campo teléfono, esto a su vez genera que se
repitan los registros según la cantidad de teléfonos que queramos ingresar, para
resolver esta situación aplicaremos la segunda forma normal.
30
11.2.3. Tercera Forma Normal
El objetivo de esta forma es el siguiente:
Eliminar los campos que no dependan de la clave.
Para este caso plantearemos un ejemplo de una tabla de Empleados, ver figura
30.
31
Figura 31: Valor Independiente
Fuente: Elaboración Propia
32
Al realizar el análisis de esta relación, llegaremos a que el resultado es de muchos
a muchos, por lo que aplicaremos la cuarta forma normal para poderla resolver,
ver figura 33.
Acá se creó la tercera Tabla llamada bajo la lógica de la relación de las entidades
principales “Actores x película”, vale la pena recalcar dos situaciones, primero,
que la clave primaria de esta tercera tabla es la combinación de las dos claves
primarias de las entidades que se relacionaron para crearla, ósea “Codigo Pelicula
+ Codigo Actor”.
Lo otro es que cada campo por si solo es llave foránea hacia sus entidades
principales.
33
11.3. Normalización de una tabla (ejemplo)
34
Referencias citadas en la
UNIDAD 2
Breit, K., House, H., & Samson, J. (2000). Attachment “dia-manual.pdf.” GNOME
documentation. Recuperado de
https://wiki.gnome.org/Apps/Dia/Documentation?action=AttachFile&do=view&tar
get=dia-manual.pdf
Capacho J. & Wilson N. (2017). Diseño de Base de Datos. Barranquilla, Colombia:
Universidad del Norte
de https://books.google.com.sv/books?id=TLBJDwAAQBAJ&printsec=frontcover
&dq=bases+de+datos&hl=es&sa=X&ved=0ahUKEwi4-vydq4TlAhWMm-
AKHTTJCksQ6AEILTAB#v=onepage&q&f=false
Casa, J., & Conesa, J. (2014). Diseño conceptual de bases de datos en UML
(Vol.288, p. 154). Editorial UOC. Recuperado de
https://ebookcentral.proquest.com/lib/cbues-
ebooks/reader.action?docID=3222912&query=uml
Hueso, L. (2014). Base de datos: grado superior. RA-MA editorial. Recuperado
de https://ebookcentral.proquest.com/lib/cbues-
ebooks/reader.action?docID=3229711&query=modelo%252Brelacional
Merchán, O. (2016). Diseño de Base de Datos (1a ed.). Cuenca, Ecuador:
Universidad del Azuay. Recuperado
de http://publicaciones.uazuay.edu.ec/index.php/ceuazuay/catalog/download/5/5/
37-2?inline=1
Piñeiro J. (2014). Diseño de Base de Datos Relacionales. España: Ediciones
Paraninfo SA
de https://books.google.com.sv/books?id=EwcuBwAAQBAJ&printsec=frontcover
&dq=base+de+datos&hl=es&sa=X&ved=0ahUKEwiqjJP-
wJjlAhXQnuAKHW54CQw4FBDoAQhcMAg#v=onepage&q&f=false
35
Reinosa, E., Maldonado, C., Muñoz, R., Damiano, L., & Abrutsky, M.
(2012). Base de Datos (1a ed.). Alfaomega. Recuperado
de https://cbues.bibliotecasdigitales.com/read/9786077079125
36
Sitios Web
https://support.microsoft.com/es-es/help/304466/how-to-define-relationships-between-tables-in-
an-access-database
BD Base de Datos
String Se refiere a datos de tipo cadena de texto
Char Se refiere a datos de cadena de tamaño fijo, define el tamaño de la cadena en bytes
y debe ser un valor de 1 a 8,000.
Varchar (n ò Se refiere a datos de cadena de tamaño variable. Use n para definir el tamaño de la
max) cadena en bytes y puede ser un valor de 1 a 8,000 o use max para indicar un tamaño
de restricción de columna hasta un almacenamiento máximo de 2 ^ 31-1 bytes (2 GB).
SGBD Sistema Gestor de Base de Datos
37