# 1064 - у вас ошибка в синтаксисе SQL; проверьте руководство, которое соответствует вашей версии сервера MariaDB для правильного синтаксиса - PullRequest
0 голосов
/ 09 июня 2019

Помогите, пожалуйста, я хочу СОЗДАТЬ ПРОЦЕДУРУ, но обнаружил ошибку, подобную этой

CREATE PROCEDURE studentAddOrEdit(
    IN _id INT,
    IN _firstname VARCHAR(191),
    IN _lastname VARCHAR(191)
)
BEGIN
IF _id = 0 THEN 
    INSERT INTO students(firstname, lastname) VALUES(_firstname,_lastname);
    SET  _id = LAST_INSERT_ID(); 
ELSE
    UPDATE
        students
    SET
        firstname = _firstname, lastname = _lastname
    WHERE
        id = _id;
END IF;
SELECT
    id AS _id
END

Теперь написано

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

1 Ответ

0 голосов
/ 09 июня 2019

Ваш код работает, когда я добавляю несколько точек с запятой. Здесь является примером.

Возможно, у вас также должны быть операторы DELIMITER, хотя, похоже, это не работает в db <> fiddle.

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