@daniil14056

Почему триггер mysql не создается?

Почему не работает полностью скопированный триггер mysql,уже до дыр его рассмотрел. Все база существуют с такими полями.
mysql>
mysql>  USE  statistic;  CREATE TRIGGER`countryLog` AFTER INSERT ON `Country` FOR EACH ROW BEGIN INSERT INTO log(msg,row_id) values ('insert', NEW.id_country); END;
Database changed
ERROR 1064 (42000): 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 '' at line 1
ERROR 1064 (42000): 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 1
mysql>
  • Вопрос задан
  • 67 просмотров
Решения вопроса 1
Melkij
@Melkij
PostgreSQL DBA
Потому что здесь вы, наоборот, не изменили delimiter команд, что требуется сделать.
Такой вот дурацкий синтаксис mysql, парсеру надо специально объяснять, где заканчивается триггер (или хранимая процедура).
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@entermix
CREATE TRIGGER `countryLog` AFTER INSERT ON `Country`
 FOR EACH ROW INSERT INTO log(`msg`, `row_id`) VALUES ('insert', NEW.id_country)
Ответ написан
@AVKor
Потому что тут:
USE  statistic;  CREATE TRIGGER`countryLog` AFTER INSERT ON `Country` FOR EACH ROW BEGIN INSERT INTO log(msg,row_id) values ('insert', NEW.id_country); END;

три запроса (последний - END;).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Badoo Development Москва
от 140 000 до 180 000 руб.
Badoo Development Москва
от 180 000 до 250 000 руб.
от 90 000 до 150 000 руб.
14 авг. 2018, в 10:57
2400 руб./за проект
14 авг. 2018, в 10:44
3000 руб./за проект
14 авг. 2018, в 09:38
5000 руб./за проект