我已经在mysql中创建了一个触发器,它已成功创建,但它不起作用,我不知道为什么,我希望有人可以帮助我。
这个想法是,每次一个新的"调查问卷"插入,我希望触发器在表中插入一条新记录" Status_Quest"使用每个" User"的主键,最后一个主键#34;问卷"根据user_account_type的不同状态。
我附上了触发器中涉及的表格的图像。 谢谢你的帮助。
这是触发器的代码
BEGIN
DECLARE uId int(11); /*Last user ID in the DB */
DECLARE flag int(11) DEFAULT 1; /*Flag for WHILE*/
DECLARE account tinyint(1) DEFAULT 1; /*Account type*/
SET @uId = (SELECT MAX(user_id) FROM users);
WHILE @flag <= @uId DO
SET @account = (SELECT user_account_type
FROM users
WHERE user_id = @flag);
IF
@account > 1
THEN
INSERT INTO statusq (quest_id, user_id, statusquest)
VALUES (new.quest_id, @flag, 3);
ELSE
INSERT INTO statusq (quest_id, user_id, statusquest)
VALUES (new.quest_id, @flag, 1);
END IF;
SET @flag = @flag+1;
END WHILE;
END