MySQL сказал: #1336 - Динамический SQL не разрешен в хранимой функции или триггере
Это главный вопрос, пожалуйста, помогите мне в этом
Это мой код:
BEGIN
DECLARE TMPCOL VARCHAR(100);
SET TMPCOL= 'ID';
SET @s = CONCAT('INSERT INTO TMP(DATA1, DATA2) VALUES ("DATA",OLD.',TMPCOL,');');
PREPARE stmt1 FROM @s;
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;
END
1 ответ
Вам не нужен динамический SQL. Это фактически то же самое:
BEGIN
INSERT INTO TMP (DATA1, DATA2)
VALUES ('DATA', OLD.ID);
END;
Это должно работать в триггере. Иначе, old
не определено.