請HEL PME找到錯誤IM失去我的心在這種愚蠢的事情....語法錯誤快把我逼瘋了
CREATE TRIGGER ControlVoto
BEFORE INSERT ON havotato
FOR EACH ROW
BEGIN
IF (NEW.voto<0)
then insert into Errori(id_errore) values(1)
end IF;
end
請HEL PME找到錯誤IM失去我的心在這種愚蠢的事情....語法錯誤快把我逼瘋了
CREATE TRIGGER ControlVoto
BEFORE INSERT ON havotato
FOR EACH ROW
BEGIN
IF (NEW.voto<0)
then insert into Errori(id_errore) values(1)
end IF;
end
你失蹤的;
和使用需要設置MySQL中的分隔符,我假設你使用
delimiter |
CREATE TRIGGER ControlVoto BEFORE INSERT ON havotato
FOR EACH ROW
BEGIN
IF (NEW.voto < 0) then
insert into Errori(id_errore) values(1);
end IF;
end
|
delimiter ;
如果你沒有設置比;
更多的分隔符,那麼語句將在第一個;
結束,你的觸發器定義將不完整。您需要告訴MySQL該語句應該在您定義的分隔符處結束。之後,您可以將分隔符設回delimiter ;
爲什麼在此查詢中我不需要分隔符? CREATE TRIGGER ControlDataEp BEFORE INSERT ON Episodi FOR EACH ROW SET NEW.data_trasmissione = ( SELECT IF(IFNULL(MAX(data_trasmissione),0)
因爲該觸發器在定義中不包含任何';'。 –
如果你沒有設置另一個分隔符而不是';'語句將會在第一個';'結束,你的觸發器定義將不完整。您需要告訴MySQL,該標記應該在您定義的分隔符處結束。之後,您可以使用'delimiter'設置分隔符號碼' –
你必須使用:在新的表達
CREATE TRIGGER ControlVoto
BEFORE INSERT ON havotato
FOR EACH ROW
BEGIN
IF (:NEW.voto<0)
then insert into Errori(id_errore) values(1)
end IF;
end
錯誤是什麼?嘗試:new.voto改爲... – Randy