Proyecto Final

FINAL BASE DE DATOS I

  1. Definir el enunciado del problema a sistematizar según las necesidades detectadas. (Debe ser Claro y tener mínimo 8 tablas) (Entrega 1)
R/:
el Gimnasio Remington se enfrenta a dificultades en la administración y el control de sus operaciones diarias lo que impacta en la satisfacción de sus clientes. La falta de un sistema integrado y eficiente ha resultado en problemas como registros manuales inconsistentes, dificultad para gestionar pagos, agendar entrenamientos, y llevar un seguimiento adecuado del progreso de los socios. Con el fin de mejorar la eficiencia y ofrecer una experiencia más satisfactoria para los usuarios, el Gimnasio Remington ha decidido desarrollar un Sistema de Gestión de Gimnasio. 

El objetivo de esta base de datos seria digitalizar y centralizar la informacion de todos lo clientes del gimnasio y sus empleados, asi como tabien pagos y actividades para optimizar el funcionamiento actuak


2 REALIZAR LO SIGUIENTE:

2.1. Darle un nombre a la base de datos.

GimansioRN

2.2. Listado de tablas que llevara la BD. (Cuales son referenciales y cuales son de movimiento)

Referenciales

- Clientes

- Entrenadores

- Membresias

- Clases

- Equipos

Movimiento

- Pagos

- Asistencia

-  Clientes_Clases

2.3. Diseñar el diccionario de datos de cada tabla (campo, nombre el campo, tipo, tamaño y descripción).

2.4. Montar o diseñar el modelo entidad relación.

2.5. Dibujar el Diagrama relacional.

Drive: https://drive.google.com/drive/folders/10wo2ZtPkCAFtVZAKkglWNv3xxFoq9P-n?usp=sharing

3. Crear la BD y las tablas respectivas en MySQL (guardar evidencias del código MySQL con el que resuelva dicha actividad) e insertar 10 registros en cada tabla (Entrega 2)

EN EL DRIVE ESTA LA COPIA DE SEGURIDAD

4. Diseñar ejercicios en los que se apliquen los diferentes comandos que se utilizaron durante el semestre con su respectivo análisis y resultados. (Entrega 3)

1. Estado de los equipos

¿Que se desea consultar y de que tablas?

equipos.estado

equipos.nombre

¿Que tablas se ven afectadas o involucradas?

Equipos

Condiciones

No

¿Como se relacionan las tablas?

No hay

¿Que comando se debe utilizar?

SELECT

SINTAXIS

select nombre, estado from equipos;


2. Tipo de membresia de cada cliente

¿Que se desea consultar y de que tablas?

clientes.nombre

membresia.tipo

¿Que tablas se ven afectadas o involucradas?

Clientes

Membresia

Pagos

Condiciones

clientes.id_cliente = pagos.id_cliente

membresia.id_membresia = pagos.id_membresia

¿Como se relacionan las tablas?

clientes.id_cliente=pagos.id_cliente

memebresia.id_membresia=pagos.id_membresia

¿Que comando se debe utilizar?

JOIN

SINTAXIS

select clientes.nombre as "nombre cliente", membresia.tipo as "tipo membresia" from clientes join pagos on clientes.id_cliente = pagos.id_cliente join membresia on pagos.id_membresia = membresia.id_membresia;


3. Actualizar precio membresia

¿Que se desea consultar y de que tablas?

membresia.costo

¿Que tablas se ven afectadas o involucradas?

Membresia

Condiciones

tipo = "mensual"

¿Como se relacionan las tablas?

No hay relaciones

¿Que comando se debe utilizar?

UPDATE

SINTAXIS

update membresia set costo = 150000 where tipo = "mensual";


4. Cantidad de pagos de cada tipo de membresia

¿Que se desea consultar y de que tablas?

membresia.tipo

pagos.id_pago

¿Que tablas se ven afectadas o involucradas?

Pagos

Membresia

Condiciones

No hay

¿Como se relacionan las tablas?

pagos.id_membresia = membresia.id_membresia

¿Que comando se debe utilizar?

GROUP BY Y COUNT

SINTAXIS

select membresia.tipo, count(pagos.id_pago) as cantidad_pagos from pagos join membresia on pagos.id_membresia = membresia.id_membresia group by membresia.tipo;


5. Clases sin clientes

¿Que se desea consultar y de que tablas?

clases.nombre

clientes_clases.id_clase

¿Que tablas se ven afectadas o involucradas?

Clases

Clientes_Clases

Condiciones

clases.id_entrenador = entrenadores.id_entrenador

¿Como se relacionan las tablas?

clientes_clases.id_clase=clases.id_clase

¿Que comando se debe utilizar?

LEFT JOIN

SINTAXIS

select clases.id_clase, clases.nombre from clases left join clientes_clases on clases_clientes.id_clase = clases_clientes.id_clase where clases_clientes.id_clase is null;

5. Total generado por cada membresia

¿Que se desea consultar y de que tablas?

membresia.tipo

pagos.monto

¿Que tablas se ven afectadas o involucradas?

Pagos

Membresia

Condiciones

clases.id_entrenador = entrenadores.id_entrenador

¿Como se relacionan las tablas?

pagos.id_membresia = membresia.id_membresia

¿Que comando se debe utilizar?

GROUP BY Y SUM

SINTAXIS

select membresia.tipo as 'tipo de membresía', sum(pagos.monto) as 'total generado' from pagos join membresia on pagos.id_membresia = membresia.id_membresia group by membresia.id_membresia;

5. Sustentación

¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar