wyzwalacz zapisany w wyzwalaczu mysql jest już używany przez instrukcję, która wywołała zapisany wyzwalacz
Chcę skonfigurować wyzwalacz, aby w przypadku aktualizacji pole przewidywania = 3, a następnie wyzwalacz zmienia wartość na 4 i zapisuje ją w bazie danych. Wyzwalacz znajduje się poniżej.
Z jakiegoś powodu wciąż pojawia się błąd mówiący:
#1442 - Can't update table 'tzanalytic\_forecast\_cached' in stored
function/trigger because it is already used by statement which invoked
this stored function/trigger.
Czy to jest właściwy sposób?
delimiter $
CREATE TRIGGER no_BoW BEFORE UPDATE ON t FOR EACH ROW
BEGIN set @prediction = new.prediction;
UPDATE t SET t.prediction = (SELECT IF(@prediction = '3', '4', @prediction)) WHERE t.event_id = new.event_id AND t.price_tier = new.price_tier; END;
$ delimiter ;