Trigger Variablennamen auflösen

hutziblitzi

Grünschnabel
Hi,

bin ratlos und hoffe das mir hier jemand helfen kann.

Folgenden Trigger hab ich erstellt:
DROP TRIGGER IF EXISTS shopartikel|
CREATE TRIGGER shopartikel
BEFORE UPDATE ON shopartikel
FOR EACH ROW
BEGIN
DECLARE done INT DEFAULT 0;
DECLARE triggerStr char(200) DEFAULT "LEER";
DECLARE fieldName char(30);
DECLARE tpe char(30);
DECLARE nll char(30);
DECLARE ky char(30);
DECLARE deflt char(30);
DECLARE extra char(30);
DECLARE oldVal char(250);
DECLARE newVal char(30);
DECLARE cursor1 CURSOR FOR DESCRIBE shopartikel;

DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;

OPEN cursor1;
REPEAT
FETCH cursor1 INTO fieldName, tpe, nll, ky, deflt, extra;
SET oldVal := NEW.fieldName;
SET newVal := OLD.fieldName;
SET triggerStr = CONCAT(triggerStr,fieldName,oldValue,oldValue,"|");
UNTIL done END REPEAT;
CLOSE cursor1;

INSERT INTO log (status,user,details) VALUES ("U", @dbuser, triggerStr);
END;

Jetzt ist das GROSSE Problem das er NEW.fieldName nicht auflöst, sondern der Inhalt aus fieldName im Log steht.

Danke schon ma für die Antworten
 
Zurück