Как объявить переменную в триггере в MySQL?Как я получаю ошибку при выполнении нескольких строк для кода - PullRequest
0 голосов
/ 27 августа 2018

Я хочу выполнить следующий код в MySql, но получаю ошибку

CREATE TRIGGER CINEMAHALLNO_GENERATE_TRIGGER 
BEFORE INSERT ON CINEMA_HALLS
FOR EACH ROW
BEGIN
  DECLARE cnt DOUBLE;
  DECLARE next1 DOUBLE;
  SELECT COUNT(HALLNO) INTO cnt from CINEMA_HALLS;
  IF cnt > 0 AND cnt < 20 THEN
    SELECT MAX(HALLNO) INTO NEXT1 FROM CINEMA_HALLS;
    set next1=next1+1;
    SET :new.HALLNO=next;
  ELSEIF cnt = 0 THEN
    SET :new.HALLNO=1;
  end if;
  end;

Ошибка вывода: SQL-запрос:

CREATE TRIGGER CINEMAHALLNO_GENERATE_TRIGGER ДО ВСТАВКИ НА CINEMA_HALLS ДЛЯ КАЖДОГО РЯДА НАЧАТЬ ОБЪЯВИТЬ cnt DOUBLE MySQL сказал: Документация

1064 - у вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MariaDB, на предмет правильного синтаксиса для использования рядом с '' в строке 5

1 Ответ

0 голосов
/ 27 августа 2018

Объявление должно быть размещено после начала. Пожалуйста, проверьте следующую ссылку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...