Olá. Eu estou recebendo esta mensagem de erro quando um trigger que eu criei é ativado:
Aqui está o código CREATE:
CREATE DEFINER=`root`@`localhost` TRIGGER `calcula_lucro_lanche` BEFORE INSERT ON `lanches_vendidos` FOR EACH ROW BEGIN
UPDATE lanches SET lanches.lucro = ((SELECT SUM(ganho) FROM lanches_vendidos WHERE lanche=NEW.lanche) -
(SELECT investimento FROM lanches WHERE nome=NEW.lanche)) WHERE nome=NEW.lanche;
END
Detalhes:
1. Eu testei os dois SELECT que vão como valor do SET, e eles retornam um DECIMAL sem problema algum.
2. Eu testei o UPDATE com esse número manualmente, e não teve problema algum.
3. O erro não é a parte que tá lanches.lucro
, porque eu adicionei isso depois justamente por causa do erro.
Sugestões?