MySQL Функция не скомпилирована true - PullRequest
0 голосов
/ 06 апреля 2020

Я пытался создать эту простую функцию, но у меня появляется следующее сообщение об ошибке:

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

вот код:

DELIMITER $$
CREATE FUNCTION GetCustomerLevel(CustomerID INT) 
RETURNS VARCHAR(20)
DETERMINISTIC
BEGIN
DECLARE credit DECIMAL(10,2) DEFAULT 0;
DECLARE customerLevel VARCHAR(20);
    SELECT SUM(total_price) 
    INTO credit
    FROM sales s,customer c
    WHERE c.customer_id= CustomerID And s.customer_id=c.customer_id ;

    IF credit > 1400 THEN
        SET customerLevel = 'PLATINUM';
    ELSE
        SET customerLevel = 'NOT PLATINUM';
    END IF;
    RETURN (customerLevel);
END$$

DELIMITER ;

1 Ответ

0 голосов
/ 10 апреля 2020

Я просто выключил MySQL сервер и перезапустил его, и код запустился без ошибок! Спасибо всем:)

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