我試圖爲每個新崗位 這裏創建觸發器是我的代碼mysql的創建觸發器拋出錯誤
CREATE TRIGGER insertprod AFTER INSERT ON post
FOR EACH ROW
BEGIN
INSERT INTO attributes SET attrtext = 'sometext', post_id = NEW.id;
END;
我得到這個錯誤
我試圖爲每個新崗位 這裏創建觸發器是我的代碼mysql的創建觸發器拋出錯誤
CREATE TRIGGER insertprod AFTER INSERT ON post
FOR EACH ROW
BEGIN
INSERT INTO attributes SET attrtext = 'sometext', post_id = NEW.id;
END;
我得到這個錯誤
你可能只需要一個分隔符:
DELIMITER $$
CREATE TRIGGER insertprod AFTER INSERT ON post
FOR EACH ROW
BEGIN
INSERT INTO attributes SET attrtext = 'sometext', post_id = NEW.id;
END;
$$
DELIMITER ;
但是,您還使用的INSERT
非標準形式。我會建議:
DELIMITER $$
CREATE TRIGGER insertprod AFTER INSERT ON post
FOR EACH ROW
BEGIN
INSERT INTO attributes(attrtext, post_id)
VALUES('sometext', NEW.id);
END;
$$
DELIMITER ;
你的INSERT命令錯誤。這本來是
INSERT INTO attributes (attrtext, post_id) VALUES ('sometext', NEW.id);
解析器被終止觸發的BEGIN...END
塊內的語句;
混淆。您需要使用DELIMITER
語句來定義新的分隔符,然後可以使用該分隔符來結束CREATE TRIGGER
語句。
還是一樣的錯誤 –