MySql Änderung bei Update
bearbeitet von
Hallo,
ich habe es nun mal wie folgt gelöst, allerdings gibt es noch ein Problem.
Ich möchte, dass NUR geloggt wird, wenn es auch wirklich eine Änderung gab.
Aktuell ist es so, dass er auch loggt, auch wenn sich nichts geändert hat.
DROP TRIGGER IF EXISTS auftrag_after_update;
DELIMITER $$
CREATE TRIGGER auftrag_after_update
AFTER UPDATE ON auftrag
FOR EACH ROW
BEGIN
INSERT INTO shop_logtable
( tabelle, tabelle_id, value, user )
VALUES
(
"auftrag",
NEW.auftragnr,
CONCAT(
"UPDATE ",
if( NEW.re_adr = OLD.re_adr, "", CONCAT( "re_adr=", "'", CAST( NEW.re_adr AS CHAR ), "'," ) ),
if( NEW.li_adr = OLD.li_adr, "", CONCAT( "li_adr=", CAST( NEW.li_adr AS CHAR ), "," ) ),
),
NEW.user
);
END $$
DELIMITER ;