触发器返回消息mysql

时间:2018-06-04 18:09:30

标签: mysql triggers

我想知道是否有办法在不中断触发器的情况下抛出消息?

我有一个触发器,可以在每次订单时检查订购产品的库存。如果库存低于最低库存,则触发器应完成订单并通知用户该产品用完。

DELIMITER &&
DROP TRIGGER IF EXISTS ControlPedidoCliente&&
CREATE TRIGGER ControlPedidoCliente BEFORE INSERT ON LineasPedidosCliente FOR EACH ROW
BEGIN
DECLARE existencias INT;
DECLARE cantidad INT;
DECLARE diferencia INT;
DECLARE total INT;
DECLARE stockMinimo INT;
SELECT (StockMaximo-PendServir) FROM Productos WHERE IdProducto = NEW.IdProducto INTO existencias;
SELECT (PendRecibir-PendServir) FROM Productos WHERE IdProducto = NEW.IdProducto INTO diferencia;
SELECT StockMinimo FROM Productos WHERE IdProducto = NEW.IdProducto INTO stockMinimo;
SET cantidad = NEW.Cantidad;
SET total = (existencias + diferencia) - cantidad;
IF total < 0 THEN
    SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'No hay suficientes existencias, se debe pedir';
END IF;
IF total < stockMinimo THEN
    /*THE MESSAGE SHOULD BE HERE*/
END IF;
END&&
DELIMITER ;

我试图调用存储过程,但我仍然得到“不允许从触发器返回结果集”

提前致谢。

0 个答案:

没有答案