有两个表的 表A
如果用户使用此查询“插入A值(abc,1,50);”
然后触发器应检查“表B”中的student_name,如果“表B”中已存在student_name,则更新表B中的“ all_marks”字段,例如,“ all_marks”应为60
如果“表B”中没有“ student_name”“ abc”,则应将相同的“ student_name”,“ student_class”,“ student_marks”插入表B
delimiter $$ create trigger insert_into_summary after insert on A for each row begin if //** here i want to write the if condition ** insert into B (name,class,overall_marks) values(new.name,new.class,new.marks,); else update B set all_marks=old.all_marks+new.student_marks; end $$ delimiter ;
请帮我怎么写触发器。
您可以使用“重复密钥更新”简单地完成此操作。在学生姓名/ ID上添加唯一键,然后在触发器中使用以下代码
begin insert into summary_score (name,number,all_marks) values(new.name,new.marks,new.score) on duplicate key update all_marks=old.all_marks+new.student_marks where B.Name=new.Name; end $$