0
我有一個數據庫中的結構,其中我有一個問題表,有4列的結果所以,int id,字符串問題,int a,int b,int c ,int d在MYSQL中觸發更新不同的列取決於插入的值
而答案表有int id,int user_id,int question_id,字符串答案。
現在答案表中的答案可以是a,b,c或d,並且在問題表中我有每個答案的數量。
我想要做的是創建一個觸發器,當插入新答案時,它會自動增加相應列上的值。
DELIMITER $$
DROP TRIGGER IF EXISTS `answer_INSERT` $$
CREATE TRIGGER `answer_INSERT`
AFTER INSERT ON `answer`
FOR EACH ROW
BEGIN
IF(answer.answer LIKE ('a'))
UPDATE `question` SET `a`=`a`+1 WHERE `id`=answer.question_id
ELSE IF(answer.answer LIKE ('b'))
UPDATE `question` SET `b`=`b`+1 WHERE `id`=answer.question_id
....
END $$
DELIMITER ;
我知道代碼並不是非常正確,但這或多或少是我所期待的。
謝謝man.Out好奇。爲什麼你必須把$ $$? – Markus
您需要將分隔符更改爲「;'以外的內容。其他觸發器定義將在最好的';;'結束,這將使其不完整。如果你的觸發器非常簡單並且不包含';',那麼你不需要首先將分隔符更改爲別的。 –