问答产品 涉及到言论审核之后可能会改变答案的allow状态,而不会返回任何信号。因此,要在ans表中加入一个触发器。
遇到的问题主要是else if语句总是报错,也没有深究 只是改成了若干个IF...THEN...ENDIF
如下
delimiter //
CREATE TRIGGER t1 AFTER UPDATE ON quiz_answer
FOR EACH ROW
BEGIN
IF new.type='1' THEN
IF new.allow='no' AND old.allow='yes' THEN
UPDATE quiz_ask SET answers = answers -1 WHERE id = OLD.to_ask;
END IF;
IF new.allow='no' AND old.allow='yfws' THEN
UPDATE quiz_ask SET answers = answers -1 WHERE id = OLD.to_ask;
END IF;
IF new.allow='yes' AND old.allow='no' THEN
UPDATE quiz_ask SET answers = answers +1 WHERE id = OLD.to_ask;
END IF;
IF new.allow='yes' AND old.allow='wfws' THEN
UPDATE quiz_ask SET answers = answers +1 WHERE id = OLD.to_ask;
END IF;
END IF;
END;
//
触发器是个好东西 ,增加了一种此类问题的解决思路
1722

被折叠的 条评论
为什么被折叠?



