Триггер не работает с MySql - PullRequest
0 голосов
/ 24 мая 2018

Я написал этот код:

CREATE TRIGGER testT BEFORE INSERT ON test3 
FOR EACH ROW 
IF NEW.a> NEW.b
THEN NEW.a=0

в mysql и таблице test3 (a, b)

что я хочу, если пользователь вставил a и b в test3 и a> b, тоa становится 0 как мне написать это? потому что в настоящее время этот код не работает, и я получаю MySQL сказал:

. # 1064 - у вас есть ошибка в вашем синтаксисе SQL;проверьте руководство, соответствующее вашей версии сервера MySQL, на предмет правильного синтаксиса для использования рядом с '.a = 0' в строке 2

1 Ответ

0 голосов
/ 24 мая 2018

Это неверный синтаксис для триггера, вы забыли использовать SET.Попробуйте это:

CREATE TRIGGER testT 
BEFORE INSERT ON test3 
FOR EACH ROW 
 IF NEW.a> NEW.b
  THEN SET NEW.a=0;
 END IF;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...