Mysql 仅当学生的总学分小于30分时,才创建一个触发器,在studies(rollno,code)表中输入值
我得到一个错误:#1064-您的SQL语法有错误;请查看与MySQL服务器版本对应的手册,以获取第5行“”附近要使用的正确语法Mysql 仅当学生的总学分小于30分时,才创建一个触发器,在studies(rollno,code)表中输入值,mysql,triggers,Mysql,Triggers,我得到一个错误:#1064-您的SQL语法有错误;请查看与MySQL服务器版本对应的手册,以获取第5行“”附近要使用的正确语法 CREATE TRIGGER db BEFORE INSERT ON studies FOR EACH ROW BEGIN IF((select CAST(SUM(credits) as UNSIGNED) from ((SELECT credits from subject WHERE subject.code = NEW.code)
CREATE TRIGGER db BEFORE INSERT ON studies
FOR EACH ROW
BEGIN
IF((select CAST(SUM(credits) as UNSIGNED) from ((SELECT credits from subject WHERE subject.code = NEW.code) union all (SELECT credits from subject,(SELECT code from studies where studies.rollno = NEW.rollno) as t1 WHERE subject.code = t1.code)) as t2) > 30) THEN
set NEW.rollno = NULL;
ENDIF;
END
试试这个-set NEW.rollno=NULL,试试这个-set NEW.rollno=NULL,