Я использую MySQL 5.0.32.
У меня есть две таблицы: UserItemVote
и ItemStat
.
UserItemVote
имеет:
user_id, item_id, vote(tinyint either 0 for downvote or 1 for upvote)
ItemStat
имеет:
item_id, total_up_vote, total_down_vote
Когда пользователь голосует за или против элемента (вставить в таблицу UserItemVote),
Я хочу иметь триггер tai_UserItemVote
для обновления либо
total_up_vote
или total_down_vote
из ItemStat
.
До сих пор я работал только с триггером обновления, но не с триггером вставки.
tai_UserItemVote
триггер вставки:
// insert to itemstat if row not exist otherwise update itemstat.
tau_UserItemVote
триггер обновления:
UPDATE ItemStat set total_down_vote=total_down_vote+1
WHERE item_id=NEW.item_id and NEW.vote = 0;
UPDATE ItemStat set total_up_vote=total_up_vote+1
WHERE item_id=NEW.item_id and NEW.vote = 1;