Chcę, aby kolumna epc
zawsze była earnings
/clicks
. Używam wyzwalacza PO UPDATE, aby to osiągnąć. Gdybym miał dodać 100 kliknięć do tej tabeli, chciałbym, aby EPC zaktualizowała się automatycznie.AKTUALIZACJA Ten sam wiersz po aktualizacji z wyzwalaczem
próbuję to:
CREATE TRIGGER `records_integrity` AFTER UPDATE ON `records` FOR EACH ROW SET
NEW.epc=IFNULL(earnings/clicks,0);
I otrzymuję ten błąd:
MySQL said: #1362 - Updating of NEW row is not allowed in after trigger
Próbowałem za stary, jak dobrze, ale też masz błąd. Mogę zrobić PRZED, ale gdybym dodał 100 kliknięć, użyłbym wcześniejszych # kliknięć dla wyzwalacza (po prawej?)
Co powinienem zrobić, żeby to osiągnąć?
EDIT - Przykładem kwerendy, która będzie działać na to:
UPDATE records SET clicks=clicks+100
//EPC should update automatically
Czy to nie jest twoja aktualizacja po aktualizacji? – hellohellosharp
@hellohellosharp. . . Jakoś nie było, gdy spojrzałem na kod. ;) –
Dzięki za aktualizację - Twoja odpowiedź wydaje się działać. Jestem jednak zdezorientowany ... czy aktualizacja BEFORE nie użyłaby błędnych wartości dla kliknięć i zarobków? – hellohellosharp