Você está na página 1de 8

Construcción base de datos proyecto SIFI 1.

0
AP6-AA2-EV2-CONSTRUCCIÓN DE ELEMENTOS DE PROGRAMACIÓN
PARA EL PROYECTO DE FORMACIÓN

PRESENTADO POR

FREDY ALEXANDER ARIAS APOLINA

JULIAN ANDRES CAMARGO MOSCOTE

JOHN FREDY MONCADA TORO

PRESENTADO A:

JAMIR ANTONIO BERRIO MARINES

ANÁLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIÓN (1412862)

SERVICIO NACIONAL DE APRENDIZAJE – SENA

2018
Construcción base de datos proyecto SIFI 1.0
Contenido

PROCEDIMIENTOS ALMACENADOS........................................................................... 3

PROCEDIMIENTO PARA INSERTAR UN PRODUCTO NUEVO......................................3

EJECUCIÓN DE PROCEDIMIENTO PARA INSERTAR PRODUCTO..............................3

PROCEDIMIENTO PARA INSERTAR UN USUARIO NUEVO..........................................3

PROCEDIMIENTO PARA INSERTAR UN CLIENTES NUEVOS.......................................4

PROCEDIMIENTO PARA INSERTAR PERFIL...................................................................4

PROCEDIMIENTO PARA INSERTAR INVENTARIO.........................................................4

PROCEDIMIENTO PARA INSERTAR PROVEEDOR.........................................................5

PROCEDIMIENTO PARA INSERTAR FACTURACION......................................................5

PROCEDIMIENTO PARA ORDENAR PRODUCTOS POR PRECIO................................5

PROCEDIMIENTO PARA SUMAR EL VALOR DE LA FACTURACION REALIZADA


HASTA LA ACTUALIDAD....................................................................................................... 6

PROCEDIMIENTO PARA VISUALIZAR LOS PRODUCTOS DE VALOR INFERIOR A


7000 PESOS DENTRO DEL LISTADO DE PRODUCTOS.................................................6

FUNCIONES.............................................................................................................................. 7

TRIGGERS................................................................................................................................................. 8
Construcción base de datos proyecto SIFI 1.0
Una vez realizados los ejercicios de práctica expuestos en el
laboratorio y validados por el tutor técnico, se debe concertar
un encuentro sincrónico con el tutor técnico y el equipo de
proyecto para determinar los elementos de programación a
construir para el sistema de información, estos deben elaborar
se en el SGBD seleccionado.
Estos elementos deben cumplir con las siguientes
especificaciones:
 Para cada elemento se debe identificar a que requerimiento funcional o caso
de uso apoyan.
 Deben construirse mínimo 10 procedimientos almacenados.
 Deben construirse mínimo 5 funciones.
 Deben construirse mínimo 5 desencadenadores.
Los anteriores elementos deben ser presentados en un
documento donde se especifiquen los ítems determinados
anteriormente, el objetivo de cada uno de los elementos
propuestos, los códigos correspondientes a los elementos
programados y los resultados de la ejecución sobre la base de
datos del proyecto.

PROCEDIMIENTOS ALMACENADOS

Las sentencias utilizadas para crear los diferentes procedimiento almacenados


fueron:

Procedimiento para Insertar un producto nuevo.

DELIMITER //
CREATE PROCEDURE INSERTARPRODUCTO (IN ID_PRODUCTO INT, NOMBRE_PRO VARCHAR (50),
CANTIDAD_PRO INT, VALOR_PRO INT)
BEGIN INSERT INTO PRODUCTO (ID_PRODUCTO,NOMBRE_PRO, CANTIDAD_PRO,VALOR_PRO)
VALUES (ID_PRODUCTO,NOMBRE_PRO,CANTIDAD_PRO,VALOR_PRO);
END //

Ejecución de procedimiento para insertar producto

CALL INSERTARPRODUCTO (6,'CARTULINA',20,2000);

Procedimiento para Insertar un usuario nuevo.

DELIMITER //
Construcción base de datos proyecto SIFI 1.0
CREATE PROCEDURE INSERTARUSUARIO (IN Id_Usuario INT, Id_Perfil INT,
Nombre_Usu VARCHAR(50), Fecha_Creacion DATE, Email_Usu VARCHAR(50), Fecha_Fin
DATE, Clave VARCHAR(15),
BEGIN INSERT INTO USUARIO (Id_Usuario, Id_Perfil, Nombre_Usu,
Fecha_Creacion, Email_Usu, Fecha_Fin, Clave) VALUES (Id_Usuario, Id_Perfil,
Nombre_Usu, Fecha_Creacion, Email_Usu, Fecha_Fin, Clave);
END //

CALL INSERTARUSUARIO (4,1,'USUARIO PRUEBA',20180329,


'USUARIOPRUEBA@GMAIL.COM',20500101, 4321);

Procedimiento para Insertar un clientes nuevos.

DELIMITER //
CREATE PROCEDURE INSERTARCLIENTES (IN Id_Cliente INT, Nombre_Cliente
VARCHAR(50), Telefono_Cliente INT, Direccion_Cliente VARCHAR(50),
Cliudad_Cliente VARCHAR(20), Email_Cliente VARCHAR(50) )
BEGIN INSERT INTO USUARIO (Id_Cliente, Nombre_Cliente, Telefono_Cliente,
Direccion_Cliente, Cliudad_Cliente, Email_Cliente) VALUES (Id_Cliente,
Nombre_Cliente, Telefono_Cliente, Direccion_Cliente, Cliudad_Cliente,
Email_Cliente);
END //

CALL INSERTARUSUARIO (4,1,'USUARIO PRUEBA',20180329,


'USUARIOPRUEBA@GMAIL.COM',20500101, 4321);

Procedimiento para insertar perfil.

DELIMITER //
CREATE PROCEDURE INSERTARPERFIL (IN Id_Perfil INT, Id_Usuario INT,
Descripcion_Per VARCHAR(50)) BEGIN INSERT INTO PERFIL (Id_Perfil, Id_Usuario
) VALUES (Id_Perfil, Id_Usuario, Descripcion_Per );
END //

CALL INSERTARPERFIL (2,1,'UPRUEBA');

Procedimiento para Insertar inventario.

DELIMITER //
CREATE PROCEDURE INSERTARINVENTARIO (IN Id_Inventario INT, Id_Cliente INT,
Id_Producto INT, Cantidad INT, Ubicacion INT, Fecha_Inv DATE, Id_Proveedor
INT)
BEGIN INSERT INTO INVENTARIO (Id_Inventario, Id_Cliente, Id_Producto,
Cantidad, Cantidad, Ubicacion, Fecha_Inv, Id_Proveedor ) VALUES
Construcción base de datos proyecto SIFI 1.0
(Id_Inventario, Id_Cliente, Id_Producto, Cantidad, Ubicacion, Fecha_Inv,
Id_Proveedor);
END //

CALL INSERTARINVENTARIO (2,2,2,20, 1, '20180328',890930501);

Procedimiento para Insertar proveedor.

DELIMITER //
CREATE PROCEDURE INSERTARPROVEEDOR (IN Id_Proveedor INT, Id_Cliente INT,
Nombre_Prov VARCHAR(50), Direccion_Prov VARCHAR(50), Telefono_Prov INT,
Id_Producto INT, Email_Prov VARCHAR(50))
BEGIN INSERT INTO INVENTARIO (Id_Proveedor , Id_Cliente, Nombre_Prov,
Direccion_Prov,Telefono_Prov, Id_Producto, Email_Prov) VALUES (Id_Proveedor ,
Id_Cliente, Nombre_Prov, Direccion_Prov,Telefono_Prov, Id_Producto,
Email_Prov);
END //

CALL INSERTARPROVEEDOR (890501505,2, 'PANAMERICANA',20,4441254,3,


'panamericanab@gmail.com');

Procedimiento para Insertar facturacion.

DELIMITER //
CREATE PROCEDURE INSERTARFACTURACION (Id_Factura INT, Id_Cliente INT,
Fecha_Factura DATE, Id_Producto INT, Cant_Producto INT, Valor_Producto INT,
Iva_Producto INT )
BEGIN INSERT INTO Facturacion (Id_Factura , Id_Cliente , Fecha_Factura ,
Id_Producto, Cant_Producto, Valor_Producto, Iva_Producto) VALUES (Id_Factura
, Id_Cliente , Fecha_Factura , Id_Producto, Cant_Producto, Valor_Producto,
Iva_Producto);
END //

CALL INSERTARFACTURACION (2, 890930504,'20180329',3,2,714,114);

Procedimiento para ordenar productos por precio.

CREATE PROCEDURE ORDENARPRO()

SELECT * FROM PRODUCTO ORDER BY VALOR_PRO;


Construcción base de datos proyecto SIFI 1.0
Para ejecutarlo y que se muestre en pantalla todos los productos desde el más barato
al más caro simplemente ejecutar:

CALL ORDENARPRO

Procedimiento para sumar el valor de la facturacion realizada hasta la


actualidad.

CREATE PROCEDURE SUMARFACTURACION()

SELECT SUM(VALOR_PRODUCTO) AS VENTAS FROM FACTURACION

CALL SUMARFACTURACION

Procedimiento para visualizar los productos de valor inferior a 7000 pesos


dentro del listado de productos.

CREATE PROCEDURE productosmenorvalor ()

SELECT * FROM PRODUCTO WHERE `VALOR_PRO`< 7000

CALL productosmenorvalor
Construcción base de datos proyecto SIFI 1.0

Se visualizan los diferentes procedimientos dentro del phpmyadmin así:

FUNCIONES

Encontrar id proveedor

CREATE FUCTION PROVEEDOR(NOM VARCHAR (30))


RETURNS SMALLINT
BEGIN
DECLARE ID SMALLINT;
SET ID=(SELECT ID_PROVEEDOR FROM PROVEEDOR WHERE
NOMBRE_PROV=NOM
RETURN ID;
END //

Validar que producto es mayor que el parámetro que se indique


Construcción base de datos proyecto SIFI 1.0
CREATE FUCTION MAYOR (NUMERO VARCHAR(40)) RETURNS VARCHAR
(80) BEGIN DECLARE RESULTADO VARCHAR (20)
SET RESULTADO =(SELECT COUNT (*) AS CANTIDAD FROM PRODUCTO)
WHERE VALOR_PRO > 300 NUMERO):
RETURN RESULTADO;
END

DESENCADENADORES

CREATE TRIGGER INSER_PROVEDOR AFTER INSERT ON usuario


FOR EACH ROW
BEGIN
IF NEW.TIPO_PROV = PROVEEDOR THEN
INSERT INTO PROVEEDOR (`ID_PROVEDOR`) VALUES
(NEW.ID_PROVEDOR);
END IF;
END;

Você também pode gostar