Я пытаюсь автоматизировать процесс запуска, так что мне не нужно вручную создавать триггеры для каждой таблицы, которую я хочу использовать. К сожалению, я возвращаю сообщение об ошибке синтаксиса.
Вот мой код
$updateTrigger = "DROP TRIGGER IF EXISTS {$table}Update CREATE TRIGGER {$table}Update AFTER UPDATE ON $table FOR EACH ROW BEGIN DECLARE N DATETIME; SET N = now(); INSERT INTO StagesHistory (Stage, StageID, Date, Action) VALUES ('$table', NEW.ID, N, ?); END"; $ut = $dbh->prepare($updateTrigger); $ut->execute(array($update)); $error = $ut->errorInfo();
Вычисление $error
возвращает это сообщение об ошибке:
У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с 'CREATE TRIGGER TranslationUpdate ПОСЛЕ ОБНОВЛЕНИЯ ON Translation FOR EACH R' в строке 2
Я не могу понять, о какой ошибке это говорит. В чем проблема, и как мне это исправить?