ここで、X テーブルの内容を Y テーブルにコピーし、同じ行で X テーブルから行を削除したいと考えています。次の方法で試しましたが、うまくいきません。
Drop trigger if exists myTrigger;
delimiter |
create trigger myTrigger
after insert on X
for each row
BEGIN
IF STRCMP(NEW.SysLogTag,"kernel:") = 0 THEN
INSERT INTO Y(logtime,moduleid,severity,messageid,message) values(NULL,1,1,100,NEW.Message);
ELSEIF NEW.SysLogTag like 'ntpd[%]:' THEN
INSERT INTO Y(logtime,moduleid,severity,messageid,message) values(NULL,6,1,100,NEW.Message);
ELSE
INSERT INTO Y(logtime,moduleid,severity,messageid,message) values(NULL,4,1,100,NEW.Message);
END IF;
delete from X where ID=NEW.ID; //Not working.
END;|
delimiter ;