1.Definir el enunciado del problema a sistematizar según las necesidades detectadas.
En la actualidad la información de los diferentes grupos o personas vinculados con la empresa se encuentra almacenada en archivos diferentes. Como consecuencia de ello, no es posible establecer relaciones entre los distintos grupos de interés como son clientes , proveedores, contratistas, además al encontrarse la información dispersa, se hace más complejo el procedimiento para buscar un determinado dato.
Por tal motivo se propone la creación de una base de datos donde se puedan integrar la información correspondiente a: proyectos(nombre,fecha inicio y final), clientes(nombre,dirección,teléfono,email), proveedores(nombre,dirección,teléfono,email), contratistas(nombre,dirección,teléfono,email),producto(nombre,marca),servicio(nombre) que facilite la gestión del gerencia y demás personas que puedan ser usuarias del sistema.
2 . Realizar:
2.1. Darle un nombre a la base de datos
Sistema de Información para la prestación de Servicios Ambientales
2.2. Listado de tablas que llevara la BD.
Tablas principales
- Clientes
- Proveedores
- Contratistas
- Proyectos
- Productos
- Servicios
Tablas relacionales
- Proyecto_Clientes
- Proyecto_Contratistas
- Compras
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.
Enlace a archivo en excel
https://drive.google.com/drive/folders/1wg3M3s5ct6q2ll1PwapPSzA4CEN0W85a?usp=sharing
3. Crear la BD y las tablas respectivas en mysql
https://drive.google.com/drive/folders/1wg3M3s5ct6q2ll1PwapPSzA4CEN0W85a?usp=sharing
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.
2.4. Montar o diseñar el modelo entidad relación.
2.5. Dibujar el Diagrama relacional.
Enlace a archivo en excel
https://drive.google.com/drive/folders/1wg3M3s5ct6q2ll1PwapPSzA4CEN0W85a?usp=sharing
3. Crear la BD y las tablas respectivas en mysql
https://drive.google.com/drive/folders/1wg3M3s5ct6q2ll1PwapPSzA4CEN0W85a?usp=sharing
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.
Visualizar los proyectos que se realizarán en Espinal
select*from proyecto_cliente where valor_inicial>=20000000;
- Que información se desea mostrar o visualizar:
Proyectos del Espinal
- Cual es el nombre de la tabla de la cual se necesita la información:
Tabla proyectos
- Condición: se realicen en el Espinal
select*from proyecto where municipio='Espinal';
Visualizar los proyectos cuyo valor inicial>=20 mill
- Que información se desea mostrar o visualizar:
Todos los proyectos
- Cual es el nombre de la tabla de la cual se necesita la información:proyecto_cliente
- Condición: proyectos con valor inicial>=20 mill
select*from proyecto_cliente where valor_inicial>=20000000;
Visualizar los proyectos cuyo valor inicial>=50000000 and valor ejecutado <=42000000
- Que información se desea mostrar o visualizar:
todos los proyectos
- Cual es el nombre de la tabla de la cual se necesita la información:proyecto_cliente
- Condición: valor_inicial>=50.000.000 y valor_ejecutado <=42000000
select*from proyecto_cliente where valor_inicial>=50000000 and valor_ejecutado<=42000000;
Crear una consulta que visualice la información de los clientes 002,005 y 008
- Que información se desea mostrar o visualizar:
Todos los clientes
- Cual es el nombre de la tabla de la cual se necesita la información:clientes
- Condición:clientes con codigo 002,005 y 008
select*from cliente where Idcliente in('002','005','008');
Visualizar la información de los proyectos que comienzan con la letra m.
- Que información se desea mostrar o visualizar: todos los proyectos
- Cual es el nombre de la tabla de la cual se necesita la información:proyectos
- Condición:Nombre de proyectos que empiecen con la letra m
select*from proyecto where nombre like 'm%';
Visualizar el código del proyecto, el nombre del cliente, el municipio y el valor ejecutado
Visualizar el código del proyecto, el nombre del cliente, el municipio y el valor ejecutado
- Que se desea consultar y de que tablas
proyecto.Idproyecto
cliente.nombre
proyecto.municipio
proyecto_cliente.valor_ejecutado
- Que tablas se ven afectadas o involucradas
cliente,proyecto y proyecto_cliente
- Condición:
Ninguna
- Como se relacionan las tablas
cliente.Idcliente=proyecto_cliente.Idcliente
proyecto_cliente.Idproyecto=proyecto.Idproyecto
- Que comando se debe utilizar
select
select proyecto.Idproyecto, cliente.nombre, proyecto.municipio, proyecto_cliente.valor_ejecutado from cliente,proyecto,proyecto_cliente where cliente.Idcliente=proyecto_cliente.Idcliente and proyecto_cliente.Idproyecto=proyecto.Idproyecto;
Consultar que contratista(s) participan en el proyecto 110
- Que se desea consultar y de que tablas
contratista.Idcontratista
proyecto_compra.Idproyecto
contratista.nombre
- Que tablas se ven afectadas o involucradas
Contratista y proyecto_compra
- Condición:
Contratista del proyecto 110
- Como se relacionan las tablas
contratista.idcontratista=proyecto_compra.Idcontratista
- Que comando se debe utilizar
select
select contratista.Idcontratista, proyecto_compra.Idproyecto, contratista.nombre from contratista, proyecto_compra where proyecto_compra.Idproyecto='110' and contratista.idcontratista=proyecto_compra.Idcontratista;
Consultar que proyectos tiene como proveedor a Papeleria La Especial
- Que se desea consultar y de que tablas
proyecto_compra.Idproyecto
proveedor.Idproyecto
proveedor.nombre
- Que tablas se ven afectadas o involucradas
Proveedor y proyecto_compra
- Condición:
Proyectos donde el proveedor es Papeleria La Especial
- Como se relacionan las tablas
proveedor.idproveedor=proyecto_compra.Idproveedor
- Que comando se debe utilizar
select
select proyecto_compra.Idproyecto, proveedor.Idproyecto, proveedor.nombre from proveedor, proyecto_compra where proveedor.nombre='Papeleria La Especial' and proveedor.idproveedor=proyecto_compra.Idproveedor;
Consultar el codigo del proyecto, nombre del proyecto y valor ejecutado
- Que se desea consultar y de que tablas
proyecto_compra.Idproyecto
proyecto.nombre
proyecto_compra.valor_ejecutado
Que tablas se ven afectadas o involucradas
Proyecto y proyecto_compra
- Condición:
Ninguna
- Como se relacionan las tablas
proyecto.Idproyecto=proyecto_compra.Idproyecto
- Que comando se debe utilizar
select
select proyecto_cliente.Idproyecto, proyecto.nombre, proyecto_cliente.valor_ejecutado from proyecto_cliente,proyecto where proyecto.Idproyecto=proyecto_cliente.Idproyecto;
Consultar los proyectos donde participa el contratista 009
- Que se desea consultar y de que tablas
proyecto_compra.Idproyecto
contratista.Idcontratista
contratista.nombre
- Que tablas se ven afectadas o involucradas
contratista y proyecto_compra
- Condición:
IdContratista=009
- Como se relacionan las tablas
contratista.Idcontratista=proyecto_compra.Idcontratista
- Que comando se debe utilizar
select?
select proyecto_compra.Idproyecto, contratista.Idcontratista, contratista.nombre from contratista,proyecto_compra where proyecto_compra.Idcontratista='009' and contratista.Idcontratista=proyecto_compra.Idcontratista;
Cuanto es el valor pagado a los contratistas?
Cual es el proveedor que ha recibido el pago más alto?
Proyecto_compra
select max(valor_prov)from proyecto_compra;
Cual es el contratista con el menor pago?
Proyecto_compra
select min(valor_contr)from proyecto_compra;
Cambiar el municipio del proyecto "Medición huella hidrica empresarial" por Cartagena
Ordenar los proyectos por valor ejecutado
select*from proyecto_cliente order by valor_ejecutado;
Visualizar el codigo del proyecto, el codigo del proveedor, el nombre del proveedor y el valor pagado.
Enlace
https://drive.google.com/drive/folders/1wg3M3s5ct6q2ll1PwapPSzA4CEN0W85a?usp=sharing
Cuanto es el valor pagado a los contratistas?
- Que se desea calcular y de que tablas
- Que tablas se ven afectadas o involucradas?
- Condiciones
Valor pagado a contratistas.
- Como se relacionan las tablas?
No aplica
- Cuál es la función que voy a utilizar?
Suma
select sum(valor_contr)'Valor total' from proyecto_compra;
Cual es el proveedor que ha recibido el pago más alto?
- Que se desea calcular y de que tablas
Proyecto_compra
- Que tablas se ven afectadas o involucradas?
proyecto_compra
- Condiciones
- Como se relacionan las tablas?
- Cuál es la función que voy a utilizar?
select max(valor_prov)from proyecto_compra;
Cual es el contratista con el menor pago?
- Que se desea calcular y de que tablas
Proyecto_compra
- Que tablas se ven afectadas o involucradas?
proyecto_compra
- Condiciones
- Como se relacionan las tablas?
- Cuál es la función que voy a utilizar?
select min(valor_contr)from proyecto_compra;
Cambiar el municipio del proyecto "Medición huella hidrica empresarial" por Cartagena
Sintaxis: update libro set municipio ='Cartagena' where Idproyecto='180';
Ordenar los proyectos por valor ejecutado
select*from proyecto_cliente order by valor_ejecutado;
Visualizar el codigo del proyecto, el codigo del proveedor, el nombre del proveedor y el valor pagado.
- Que se desea consultar y de que tablas?
proyecto_compra.Idproyecto
proyecto_compra.Idproveedor
proveedor.nombre
proyecto_compra.valor_prov
- Qué tablas se ven afectadas o involucradas?
Tabla 1: tabla principal= proveedor
Tabla 2: tabla relacional=proyecto_compra
- Condición
No hay ninguna condición
- Como se relacionan las tablas?
proveedor.Idproveedor=proyecto_compra.Idproveedor
- Que comando se debe utilizar?
Select-inner Join
select distinct proyecto_compra.Idproyecto, proyecto_compra.Idproveedor, proveedor.nombre, proyecto_compra.valor_prov from proveedor inner join proyecto_compra on proveedor.Idproveedor=proyecto_compra.Idproveedor;
Enlace
https://drive.google.com/drive/folders/1wg3M3s5ct6q2ll1PwapPSzA4CEN0W85a?usp=sharing