Du kan ikke opdatere rækker i tabellen i et efter opdateringsudløser.
Måske vil du have noget som dette:
CREATE TRIGGER `records_integrity` BEFORE UPDATE
ON `records`
FOR EACH ROW
SET NEW.epc=IFNULL(new.earnings/new.clicks, 0);
EDIT:
Inde i en trigger har du adgang til OLD
og NEW
. OLD
er de gamle værdier i posten og NEW
er de nye værdier. I en før trigger, NEW
værdier er det, der bliver skrevet til tabellen, så du kan ændre dem. I et efter trigger, NEW
værdier er allerede skrevet, så de kan ikke ændres. Jeg tror, at MySQL-dokumentationen
forklarer dette ret godt.