При срабатывании триггера ошибка: "Can't update table in stored function/trigger because it is already used by statement"
Написал простенький триггер до вставки в таблицу (на обновление записи):
DELIMITER //
CREATE TRIGGER update_same_product
BEFORE INSERT ON `list_orders`
FOR EACH ROW
BEGIN
DECLARE num_prod int;
DECLARE id_conf int;
DECLARE list_id int;
DECLARE checker bool;
SET num_prod = new.num_of_prod;
SET id_conf = new.id_con;
SET checker = (SELECT EXISTS(SELECT id_con FROM list_orders WHERE id_con = id_conf));
if checker = 1 THEN
SET list_id = (SELECT id_lo FROM list_orders WHERE id_con = id_conf);
UPDATE list_orders SET num_of_prod = num_of_prod + num_prod WHERE id_lo = list_id;
end if;
END //
При добавлении в таблицу новой записи: «#1442 - Can't update table 'list_orders' in stored function/trigger because it is already used by statement which invoked this stored function/trigger»
Где-то подводный камень. Прошу помочь.
p.s. - set new.num_of_prod не подходит, так как мне необходимо поменять запись не новой строки, а уже существующей