I have a condition that will be executed depending on the data that is being sent to the procedure. This is my code:
CREATE DEFINER = erp@localhost PROCEDURE sp_stockProductoMovimientoAlmacen(
idProducto VARCHAR(50),
operacion CHAR(6),
cantidad INT,
sucursal INT(2)
)
BEGIN
IF operacion = 'suma' THEN
UPDATE productoStockMedida psm INNER JOIN producto p ON p.id_producto = psm.id_producto SET psm.stock = psm.stock + (cantidad) WHERE p.id_producto = id_producto AND p.id_tipo_almacen = sucursal;
ELSE IF operacion = 'resta' THEN
UPDATE productoStockMedida psm INNER JOIN producto p ON p.id_producto = psm.id_producto SET psm.stock = psm.stock - (cantidad) WHERE p.id_producto = id_producto AND p.id_tipo_almacen = sucursal;
ELSE
/* ESCRIBO ESTE QUERY POR TEMA DE SINTAXIS DEL CASE WHEN, ESTE QUERY NO AFECTARA AL STOCK DE NINFUN PRODUCTO */
UPDATE producto SET stock = stock - (cantidad) WHERE id_producto = '000000' AND id_tipo_almacen='000000';
END IF;
END
this is the error message that the MYSQL tells me