Her er en trigger til det formål:
DELIMITER $$
CREATE trigger update_money_after_paym
AFTER INSERT ON paym
FOR EACH ROW
BEGIN
IF (NEW.table1 IS NOT NULL AND NEW.table2 IS NOT NULL) THEN
UPDATE money SET total_money = total_money + 50 WHERE username = NEW.username;
END IF;
END;
$$
DELIMITER;
Koden kører efter hver indsættelse i tabellen paym
. Hvis den nyligt indsatte post har begge kolonner table1
og table2
indstillet til ikke-NULL
værdier, så kører triggeren en UPDATE
forespørgsel, der tilføjer 50 til kolonnen total_money
i tabellen money
for posten, der har det samme username
som den nyligt indsatte post i paym
.