如题:
使用SQL在插入和更新时,先判断是否满足条件,满足条件则放入一张表,不满足则放入另一张表。
建立一个不及格学生登记表:lowG(Sno,sname,Cno,Grade),当sc表中发生插入、更新操作时,如果有成绩不及格,则将这位同学的学号,姓名,课目,成绩信息送入lowG表中
补充:最好是一条语句能够完成最好,是在不行创建零时表再插入也行,但是需要看到完整代码。
如题:
使用SQL在插入和更新时,先判断是否满足条件,满足条件则放入一张表,不满足则放入另一张表。
建立一个不及格学生登记表:lowG(Sno,sname,Cno,Grade),当sc表中发生插入、更新操作时,如果有成绩不及格,则将这位同学的学号,姓名,课目,成绩信息送入lowG表中
补充:最好是一条语句能够完成最好,是在不行创建零时表再插入也行,但是需要看到完整代码。
这个直接在sc表上建个行级触发器就行了。
DELIMITER $$
CREATE OR REPLACE TRIGGER test.trig1
AFTER INSERT OR UPDATE OR DELETE ON SC FOR EACH ROW
BEGIN
IF INSERTING THEN
INSERT INTO audit VALUES(NEW.ROWID,NEW.NAME,NEW.SCORE);
ELSIF UPDATING THEN
INSERT INTO LOWG(NEW.ROWID,NEW.NAME,NEW.SCORE);
ELSIF DELETING THEN
INSERT INTO LOWG(NEW.ROWID,NEW.NAME,NEW.SCORE)
END IF;
END$$
DELIMITER ;