我试图获取它,以便当用户登录时,触发器会检查特定列。如果列值为“否”,我希望将其设置为“问”,如果它已经“问”,我想让它设置它到'是'。我没有尝试似乎工作。最近我尝试过:
IF( new.eula_accepted = 'No' ) THEN SET new.eula_accepted = 'Ask';
else if( new.eula_accepted = 'Ask' ) THEN SET new.eula_accepted = 'Yes';
end if
它给我的错误是" MySQL说:#1064 - 你的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册,以获得在''附近使用的正确语法。在第3行"。如果我试试这个:
IF( new.eula_accepted = 'No' ) THEN SET new.eula_accepted = 'Ask';
end if
那个工作正常,但我真的需要它来做两件事。任何帮助都会受到赞赏,我对此感到沮丧。
答案 0 :(得分:0)
您的IF
syntax错了。使用ELSEIF
代替ELSE IF
:
IF new.eula_accepted = 'No' THEN SET new.eula_accepted = 'Ask';
ELSEIF new.eula_accepted = 'Ask' THEN SET new.eula_accepted = 'Yes';
END IF;