Sei sulla pagina 1di 17

Diseño de Bases de Datos

Unidad 3. Implementación de bases de datos

Actividad 1: Problemas de algebra y calculo

Docente: DORIAN RUIZ ALONSO

3er Semestre

Grupo: DS-DDBD-1902-B1-002

Roberto Carlos Pavón García

Matricula: ES1821012068

09/09/2019
Descripción del Caso Estudiado

Zoológico

Un zoológico necesita una aplicación informática para llevar su organización respecto a


las especies que posee, los empleados (cuidadores y guías), y los distintos itinerarios de
visita que ofrece. La información está estructurada de la siguiente manera:

 Especies: nos interesa saber el nombre en español, nombre científico y una


descripción general. Hay que tener en cuenta que una especie puede vivir en
diferentes hábitats naturales y que un hábitat puede ser ocupado por diferentes
especies. Las especies se encuentran en distintas zonas del parque de manera
que cada especie está en una zona y en una zona hay varias especies.

 Hábitats: los diferentes hábitats naturales vienen definidos por el nombre, el clima
y el tipo de vegetación predominantes, así como el continente o continentes en los
que se encuentran.

 Zonas: las zonas del parque en las que se encuentran las distintas especies
vienen definidas por el nombre y la extensión que ocupan.

 Itinerarios: los itinerarios discurren por distintas zonas del parque. La información
de interés para los itinerarios es: código de itinerario, la duración del recorrido, la
longitud del itinerario, el máximo número de visitantes autorizado y el número de
distintas especies que visita. Hay que tener en cuenta que un itinerario recorre
distintas zonas del parque y que una zona puede ser recorrida por diferentes
itinerarios.

 Guías: Los guías del parque vienen definidos por el nombre, dirección, teléfono y
fecha en la que comenzaron a trabajar en el zoológico. Interesa saber qué guías
llevan qué itinerarios, teniendo en cuenta que un guía puede llevar varios
itinerarios y que un itinerario puede ser asignado a diferentes guías en diferentes
horas, siendo es tas un dato de interés.

 Cuidadores: Los cuidadores vienen definidos por el nombre, dirección, teléfono y


fecha de ingreso al parque. Hay que tener en cuenta que un cuidador puede estar
a cargo de varias especies y que una especie puede ser atendida por varios
cuidadores, siendo de interés la fecha en la que un cuidador se hace cargo de una
especie.
Diagrama Entidad-Relación

Modelo Relacional

Viven (Id_E, Id_H)


Especies (ID, N_Español, N_Cientifico, Descripcion)
Hábitats (ID, Nombre, Clima, Vegetación, Continente)
Cuidan (Fecha, Id_E, Id_Cui)
Cuidadores (ID, EspACargo, HoraCdo)
Datos_Cuidador (IDCuidador, Nombre, 2Nombre, ApellidoP, ApellidoM, Dirección,
F_Ingreso, Teléfono)
Zonas (ID, Nombre, Tamaño, Id_E)
Recorren (Id_I, Id_Zona)
Itinerarios (ID, Duracion, Distancia, Max_Vis, N_Esp)
Recorrido (Hora_Tour, Id_It, Id_Guia)
Guías ((IDGuias, P_Nombre, S_Nombre, ApellidoP, ApellidoM, Dirección, F_Ingreso,
Teléfono)
Datos_Guias (ID_Guias, P_Nombre, S_Nombre, ApellidoP, ApellidoM, Dirección,
Teléfono)

Algebra Relacional

Para esta actividad se utilizo un software llamado “Relational”, que nos permitirá realizar
el ejercicio de consultas a través de expresiones de algebra relación.
A continuación, se muestran los resultados:

Selección
(Se muestran todos los atributos de una tabla solo colocando el nombre de la tabla entre
paréntesis)

(Se muestran todos los datos de la tabla “Cuidadores” mientras su “ID” sea mayor a 1)

(Se muestran todos los datos de la tabla “Datos_Cuidador” mientras su número de teléfono sea
mayor a “333444555”)
(Muestra los datos de la tabla “Datos_Cuidador” mientras su teléfono sea mayor a “222333444”
o mientras “ApellidoM” sea iguala “Santos”)

Proyección
(Se muestran los atributos “ApellidoP” y “ApellidoM” de la tabla “Datos_Cuidador”)

(Se muestran los atributos “Nombre” y “Clima” de la tabla “Habitats”)

(Se muestran los atributos “ID”, “Nombre” y “Tamano” de la tabla “Zonas”)


(Se muestran los atributos “Duracion”, “Distancia”, “Max_Vis” y “N_Esp” de la tabla
“Zonas”)

Unión

(Se muestran los atributos “P_Nombre”, “ApellidoP”, “ApellidoM” y “Direccion” de las


tablas “Datos_Guias” y “Datos_Cuidador”)
(Se muestran los atributos “ID” y “Nombre” de las tablas “Zonas” y “Hábitats”)

(Se muestran los atributos “S_Nombre” y “Telefono” de las tablas “Datos_Guias” y


“Datos_Cuidador”)
Una de las características de el operador binario “Unión” es que las tablas que se van a
relacionar deben tener entidades con el mismo nombre.
Intersección

La característica del operador Binario “Intersección” es que muestra los Atributos o


registros de 2 tablas diferentes, pero solo si estos son idénticos en ambas tablas, ya que
en mi base de datos no hay registros iguales, decidí crear 2 tablas independientes a mi
Proyecto para poder mostrar la función de este operador algebraico.

(Se muestra la Intersección de los datos de “Nombre” y “Apellido” de las tablas


“Ingenieros” y “Jefes”)
(Se muestra la Intersección de los datos de “Nivel” y “Zona” de las tablas “Ingenieros” y
“Jefes”)

Diferencia

Para este ejercicio agregue registros idénticos en las tablas que voy a utilizar para el
ejemplo:
(Registros de las 2 tablas)
(Se muestra la diferencia del atributo “P_Nombre” entre las tablas “Datos_Guias” y
“Datos_Cuidador”)

(Se muestra la consulta anterior, pero invirtiendo el orden de las tablas)


(Se muestran los atributos “Apellido P”, “P_Nombre”, “Direccion”, “Telefono” de las
tablas “Datos_Cuidador” y “Datos_Guias”)

(Se muestra la consulta anterior, pero invirtiendo el orden de las tablas)


Join

Esta sentencia une 2 tablas, mostrando los datos de cada una pero combinando o
descartando los registros que son iguales en cada tabla, en el siguiente ejemplo se
combinan los campos “ID” de cada tabla:

(Se muestran todos los datos de las tablas “Hábitats” y “Especies” gracias a la unión de
estas)

(Full other Join: se muestran todos los datos de las tablas “Datos_Guias” y
“Datos_Cuidador” mientras tengan un número de teléfono mayor a “111222333”)
(Creación de una nueva tabla gracias a la unión de otras 3, esta tabla se puede seguir
deputando para evitar redundancias)

Conclusión

El algebra relacional nos permite realizar las consultas dentro de una base de datos
relacional, además nos permite ser selectivos en cuanto a la información que deseamos
obtener y nos permite generar nuevas tablas con la información obtenida.
Aunque la sintaxis del algebra relacional cambia con respecto a la de SQL, esta nos
permite entender la lógica que se utiliza para realizar las consultas en una Base de datos.

Bibliografía
FINANZAS, T. I. (2019). "1.4 Algebra relacional y los cálculos relacionales - conocer los fundamentos
del algebra relacional.". Obtenido de TICS II FINANZAS:
https://sites.google.com/site/ticsiifinanzas/unidad-1-diseno-de-bases-de-datos-
relacionales/algebra-relacional-y-los-calculos-relacionales---conocer-los-fundamentos-del-
algebra-relacional

fundamentosBD. (28 de Marzo de 2013). "S08 - Álgebra relacional (1/2)". Obtenido de YouTube:
https://www.youtube.com/watch?v=ZooWECoQ1uM

Universidad Abierta y a Distancia de México. (Agosto de 2019). "Diseño de bases de datos. Unidad
3. Implementación de bases de datos". Obtenido de unadmexico.blackboard.com:
https://unadmexico.blackboard.com/bbcswebdav/institution/DCEIT/2016_S2_B1/DS/03/
DDBD/U3/Unidad_3_Implementacion_de_bases_de_datos.pdf

Potrebbero piacerti anche