我正在嘗試自動執行我的觸發器過程,以便我不必爲要使用的每個表手動創建觸發器。不幸的是,我收到一個錯誤,說有一個語法錯誤。爲什麼我不能用PDO創建觸發器?
這裏是我的代碼
$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更新後,對翻譯 FOR EACH R」正確的語法手冊2
我無法弄清楚什麼樣的錯誤是在談論。有什麼問題,我該如何解決?
哇,這是令人難以置信的簡單 –