Title | Actividad Evaluativa EJE 3 Bases DE Datos II |
---|---|
Author | Anderson Francisco Garzon Camacho |
Course | Sistemas Integrados de Gestión |
Institution | Fundación Universitaria del Área Andina |
Pages | 8 |
File Size | 163.8 KB |
File Type | |
Total Downloads | 129 |
Total Views | 923 |
1EJE 3 BASES DE DATOS II “VUELOS”Anderson Francisco Garzón Camacho Juan David Guerrero VargasFundación Universitaria del Área Andina Bases de datos 2 Mayo 2021INTRODUCCIÓNEn este trabajo veremos los temas tratados en los encuentros sincrónicos, PDF subidos en la plataforma e información recolectada ...
1EJE 3 BASES DE DATOS II “VUELOS”
Anderson Francisco Garzón Camacho Juan David Guerrero Vargas
Fundación Universitaria del Área Andina Bases de datos 2 Mayo 2021
INTRODUCCIÓN En este trabajo veremos los temas tratados en los encuentros sincrónicos, PDF subidos en la plataforma e información recolectada por parte de los integrantes del grupo para el desarrollo de un diagrama (entidad-relación) y su explicación un poco más detallada, a los requerimientos solicitados los cuales se encuentran en el taller número 3 de la asignatura Bases de Datos 2, a continuación podemos apreciar una imagen donde se puede encontrar este diagrama de un forma un poco sencilla y una parte del código que se empleó para crear esta pequeña BD , pero que da respuesta al requerimiento planteado.
Diagrama Entidad – Relación
En esta imagen podemos apreciar las relaciones 1::N (uno a muchos) N::N (Muchos a muchos), donde en algunas utilizamos tablas puentes, ya que para generar un lugar donde cumpliera los requisitos solicitados y poder manejar bien las llaves FK (llave foránea) y PK (llave primaria), a continuación veremos una pequeña parte del código que utilizamos para crear estas tablas y BD.
Código utilizado: Crear BD -> Create Database “Vuelos”; Usar BD -> Use Database Vuelos;
Creación de tabla Roles -> CREATE TABLE IF NOT EXISTS Roles ( idRoles INT NOT NULL AUTO_INCREMENT, nombre_rol VARCHAR(45) NOT NULL, descripcio_rol VARCHAR(45) NULL, estado INT(2) NULL, PRIMARY KEY (idRoles)); Creación de tabla Usuarios -> CREATE TABLE Usuarios ( idUsuarios INT NOT NULL AUTO_INCREMENT, nombres VARCHAR(45) NOT NULL, apellidos VARCHAR(45) NULL, celular VARCHAR(11) NULL, correo VARCHAR(45) NULL, Roles_idRoles INT NOT NULL, PRIMARY KEY (idUsuarios), FOREIGN KEY (Roles_idRoles); Creación de tabla Vuelos -> CREATE TABLE Vuelos ( idVuelos INT NOT NULL AUTO_INCREMENT, codigo VARCHAR(45) NOT NULL, fecha_vuelo DATETIME NULL, horas_vuelo INT NULL, PRIMARY KEY (idVuelos)); Creación de tabla aviones -> CREATE TABLE aviones ( idaviones INT NOT NULL AUTO_INCREMENT, marca VARCHAR(45) NULL, codigo_avion VARCHAR(45) NULL, company VARCHAR(45) NULL, PRIMARY KEY (idaviones));
Creación de tabla asientos -> CREATE TABLE asientos ( idasientos INT NOT NULL AUTO_INCREMENT, num_fila VARCHAR(45) NOT NULL, num_columna VARCHAR(45) NOT NULL, estado INT(3) NULL, preferencial INT(3) NULL, clase_servicio INT(3) NULL, PRIMARY KEY (idasientos)); Creación de tabla reservas -> CREATE TABLE reservas ( idreservas INT NOT NULL AUTO_INCREMENT, fecha_reserva DATETIME NULL, fecha_salisa DATETIME NULL, fecha_llegada DATETIME NULL, estad_reserva INT(2) NULL, valor_reserva FLOAT NULL, fecha_canelacio DATETIME NULL, peso_equipaje FLOAT NULL, valor_eqiupaju FLOAT NULL, PRIMARY KEY (idreservas)); Creación de tabla aeropuertos -> CREATE TABLE aeropuertos ( idaeropuertos INT UNSIGNED NOT NULL AUTO_INCREMENT, nombre VARCHAR(45) NOT NULL, ciudad VARCHAR(45) NULL, telefeno VARCHAR(45) NULL, capacidad_avio INT NULL, num_vuelos INT NULL, PRIMARY KEY (idaeropuertos));
Asi creamos las tablas con sus campos básicos, teniendo en cuenta que pueden ser mucho mas complejas estas tablas, a continuación realizaremos las tablas “puente” o la tercera tabla la cual se genera con base en la relación de N::N (muchos a muchos). Creación tercera tabla aviones_asientos -> CREATE TABLE aviones_asientos ( asientos_idasientos INT NOT NULL, aviones_idaviones INT NOT NULL, Idavionesasientos INT UNSIGNED NOT NULL, PRIMARY KEY (asientos_idasientos, aviones_idaviones, Idavionesasientos), FOREIGN KEY (aviones_idaviones), FOREIGN KEY (asientos_idasientos); Creación tercera tabla aviones_vuelos-> CREATE TABLE aviones_Vuelos ( avionesVuelosc INT UNSIGNED NOT NULL AUTO_INCREMENT, aviones_idaviones INT NOT NULL, Vuelos_idVuelos INT NOT NULL, PRIMARY KEY (avionesVuelosc, aviones_idaviones, Vuelos_idVuelos), FOREIGN KEY (aviones_idaviones), FOREIGN KEY (Vuelos_idVuelos); Creación tercera tabla reservas_Usuarios-> CREATE TABLE reservas_Usuarios ( reservas_Usuarios INT UNSIGNED NOT NULL AUTO_INCREMENT, reservas_idreservas INT NOT NULL, Usuarios_idUsuarios INT NOT NULL, asientos_idasientos INT NOT NULL, Vuelos_idVuelos INT NOT NULL, PRIMARY KEY (reservas_Usuarios, reservas_idreservas, Usuarios_idUsuarios), FOREIGN KEY (reservas_idreservas), FOREIGN KEY (Usuarios_idUsuarios), FOREIGN KEY (asientos_idasientos),
FOREIGN KEY (Vuelos_idVuelos); Creación tercera tabla aviones_vuelos-> CREATE TABLE aeropuertos_Vuelos ( aeropuertos_Vuelos INT UNSIGNED NOT NULL AUTO_INCREMENT, aeropuertos_idaeropuertos INT NOT NULL, Vuelos_idVuelos INT NOT NULL, PRIMARY KEY (aeropuertos_Vuelos, aeropuertos_idaeropuertos, Vuelos_idVuelos), FOREIGN KEY (aeropuertos_idaeropuertos), FOREIGN KEY (Vuelos_idVuelos); Aquí podemos ver que tenemos 3 PK en las diferentes tablas puente esto no es un error se debe a que como esta tabla es el puente entre dos tablas, se permite poner 3 PK para poder asociar los registros e información entre ellas. Otro punto a tener en cuenta es que se pueden crear Triggers, Procedimientos almacenados y Funciones.
Conclusiones
El desarrollo de la actividad nos dio la oportunidad de adentrarnos más en los métodos de relación que se manejan en la creación de modelos Entidad relación, tales como (1::N, 1::1, N::N) , estos conceptos son muy importantes aprenderlos ya que con ellos se define la estructuración y normalización de la base de datos garantizando una integridad y no duplicidad en la información. (Juan Guerrero)
Este trabajo nos permite ver una vista básica de como realizar una base de datos, sus relaciones, tipos de campos, terceras tablas y nos da una pequeña introducción a lo que nos espera en el ambiente laboral, ya que en una empresa una BD puede tener como mínimo 150 tablas perfectamente y se debe conocer muy bien como realizar, subconsultas, triggers, procedimientos, cursores, Loops, Funciones y lo mas importante tener muy presente que una consulta no puede demorarse mucho tiempo, por ejemplo una consulta de 2000 líneas de código puede realizarse perfectamente en 30 sg o menos, aquí es cuando entra la Normalización de las bases de datos, donde se debe indexar, mejorar el código en algunos casos hacer subconsultas y demás. Pero en general esta actividad nos sirve bastante a todos para tener las bases bien estructuradas. (Anderson Garzón)...