Получение ошибки # 1064 Ближний конец при попытке создать триггер - PullRequest
0 голосов
/ 08 декабря 2018
DELIMITER $$
CREATE TRIGGER DELETETRIGGER AFTER DELETE ON WORKLOG
  FOR EACH ROW
  BEGIN
    INSERT INTO WORKLOGCOPY (Log_ID, Order_ID, Employee_ID, Client_ID, 
Work_Completed, Hours_Taken, Date_Logged)
    VALUES(OLD.Log_ID, OLD.Order_ID, OLD.Employee_ID, OLD.Client_ID, 
OLD.Work_Completed, OLD.Hours_Taken, OLD.Date_Logged)
  END$$
DELIMITER ;

Я получаю сообщение об ошибке:

#1064 - You have an error in your SQL syntax; check the manual that 
corresponds to your MySQL server version for the right syntax to use near 
'END' at line 6

Попытался возиться с синтаксисом, чтобы соответствовать примерам, которые я видел, но безуспешно.

Использование MySQL на phpmyadmin, еслиэто помогает.

Спасибо.

1 Ответ

0 голосов
/ 08 декабря 2018

Вы пропускаете ; в конце INSERT INTO

DELIMITER $$
CREATE TRIGGER DELETETRIGGER AFTER DELETE ON WORKLOG
  FOR EACH ROW
  BEGIN
    INSERT INTO WORKLOGCOPY (Log_ID, Order_ID, Employee_ID, Client_ID, 
Work_Completed, Hours_Taken, Date_Logged)
    VALUES(OLD.Log_ID, OLD.Order_ID, OLD.Employee_ID, OLD.Client_ID, 
OLD.Work_Completed, OLD.Hours_Taken, OLD.Date_Logged);
  END$$
DELIMITER ;
...